Correction - should have been "...Clojure, Scala, Groovy, _Python_, Ruby..."
On Fri, May 11, 2012 at 4:49 PM, Luke Vilnis <lvil...@gmail.com> wrote: > Asserting that the keyword "def" would confuse beginners is a red herring. > Scheme is AFAIK the only language whose variable binding form is _not_ some > kind of an abbreviation. C#/JavaScript use "var". Heck, D and C++11 use > "auto", which is truly bizzare. "def" is a very common keyword to use for > this purpose (Clojure, Scala, Groovy, Java, Ruby - the list goes on). > > There are valid arguments against introducing the syntax - Scheme > tradition, the abundance of other forms that all include "define", avoiding > redundancy, the fact that languages in general do not have a bunch of > equivalent keywords for binding variables. But > readability/familiarity/understandability is not one of them. I would be > flabbergasted if the words {"let", "var", "val", "def", ...} were confusing > to any beginner. > > > On Fri, May 11, 2012 at 4:27 PM, Jukka Tuominen < > jukka.tuomi...@finndesign.fi> wrote: > >> >> I can't say I like the idea for usability and compatibility reasons. >> >> Usability: >> - Try this idea exaggerated: def lmbd cwcc cdr cond tgt gg param ... >> Maybe for hard core pros, but this doesn't make the language >> very approachable for the beginners. I made a few new ones so >> even the pros could have a taste of it :) >> >> Compatibility: >> - What if I'd like to run the code with a Racket a few >> versions back? Or even dare to try it with another dialect of scheme? >> >> What about using key shortcuts, auto completion, personal mappings >> or other IDE means to end up having in all above cases identical and >> therefore compatible source code? >> >> br, jukka >> >> ____________________ >> Racket Users list: >> http://lists.racket-lang.org/users >> > >
____________________ Racket Users list: http://lists.racket-lang.org/users