zdennis wrote: > > Here are some of my thoughts on the syntax "->(a=5,b=1){ }" to denote it > as ugly. > * -> is not a common construct in any language that I know of to Seems that creating an anonymous function has one of the most widely varying syntaxes of all language features as can be seen by this table: http://merd.sourceforge.net/pixel/language-study/syntax-across-languages.html#FnctnnnmsFnct Seems "->" appears in a few places (Perl6 looks very much like Ruby, and -> appears as part of Haskell, OCaml and Erlang's syntaxes for anonymous functions) so it's not totally unique, but only Perl6 puts the "->" at the beginning of the expression like the proposed Ruby one. > represent anonymous function declaration, while lambda is. Instead -> is > a recognized operator for dereferencing I wouldn't say Lambda's that common. For creating anonymous functions variations of the word "function" ("func", "fun", "fn", "function", "create_function") seem to appear across more languages than "lambda". And if you're looking towards well-known languages, C#'s "(a,b)=>" syntax is probably the winner. There's so little commonality across languages that I think this will be an objection no matter what syntax is used. (For people who don't know that site already, this survey of syntax across languages http://merd.sourceforge.net/pixel/language-study/syntax-across-languages/ it's a very nice reference compare commonalities of various computer languages)