[racket] `def' ?
Correction - should have been "...Clojure, Scala, Groovy, _Python_, Ruby..."
On Fri, May 11, 2012 at 4:49 PM, Luke Vilnis <lvilnis at 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.tuominen at 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
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20120511/b1457415/attachment.html>