[eeps] Multi-Parameter Typechecking BIFs

Richard O'Keefe <>
Thu Feb 26 04:46:02 CET 2009

On 26 Feb 2009, at 3:25 am, mats cronqvist wrote:

>  I'm a fan of the (apocryphal?) Python saying "only one way to do
>  it."  So, I think 'if', 'case' and 'when' should never have been
>  introduced.

Python has 'for', 'while', _and_ mapping functions.
The version of Python on this machine has two kinds of objects.
If only python.org were responding I could provide more
examples of ways in which Python violates that principle.

>  Inlined type checks, pattern matching and 'try' (*)
>  should be enough for anyone.  Sure, some things would be less
>  convenient to express, but keeping the language compact is more
>  important.

Compactness can be taken too far.  Witness 'Whitespace'.
Or the one-instruction machine.  (What was it, subtract
X from Y and jump to Z if there is an R in the month?)
Having used function languages (such as ML) without guards,
and function languages (Haskell, Clean, and Erlang) with
guards, I really _really_ don't want to go back to ML.
(OK, MLton is a great compiler, so I'm tempted, but then
the crippled syntax gets to me.)

More information about the eeps mailing list