Allen's lambda syntax proposal

Eugene Lazutkin eugene.lazutkin at
Thu Dec 4 17:44:15 PST 2008

If you started to recap the history of this discussion, could you (or
anybody else in the know) verbalize following things:

1) What is the difference between the function and the lambda? I am not
talking about their syntax, I want to understand the semantic
difference, if there is any.

2) Why is it important for a lambda to have an optional name? What's
wrong with using a function, if we want a name? IMHO lambda should have
the minimalistic syntax.

3) Why is it important to be able to specify parameter defaults in
lambda? Again, it looks like an extra sugar to me that can be covered by
a function with parameter defaults.

The reason I ask is a lot of discussion is going around "but if it has a
name" and "but if it has a default". If it doesn't have a name I would
be satisfied personally with \(a, b) {...} --- it doesn't clash with
anything. Or even with \(a, b) expr.



Mark S. Miller wrote:
> On Wed, Dec 3, 2008 at 7:25 PM, Jon Zeppieri 
> <jaz-jxCPH4jmHUs at 
> <mailto:jaz-jxCPH4jmHUs at>> wrote:
>     Okay -- so we agree.  In that case, it's clear that your proposed
>     syntax:
>       &(a,b,c) {...}
>     has the same problem, right?  Any valid ES3 infix operator will have
>     the same problem, if we use it as a prefix lambda operator.
> Welcome to the syntax races. "lambda" takes an early lead, but drops 
> back because of too much weight. For a while, it's neck and neck between 
> "||" and "^", with "\" following closely and "fn", "&", and other 
> trailing. Many old timers (including your commentator) are rooting for 
> "||" because of its previous historic performances. But "||" trips up 
> over ambiguities not present on its original track. "^" is now in the 
> lead. Oh no! It trips on a different ambiguity. This track seems riddled 
> with more ambiguities than any of these contenders have ever trained on. 
> Seeing "^" stumble, "&" and other conte nders saddled with "binary 
> operator"ness, drop back and concede. "\" has taken the lead....
> -- 
>    Cheers,
>    --MarkM
> ------------------------------------------------------------------------
> _______________________________________________
> Es-discuss mailing list
> Es-discuss-4eJtQOnFJqFAfugRpC6u6w at

More information about the Es-discuss mailing list