Why Ruby?

Andrei Alexandrescu SeeWebsiteForEmail at erdani.org
Sun Dec 19 10:48:34 PST 2010


On 12/19/10 11:54 AM, foobar wrote:
> Andrei Alexandrescu Wrote:
>
>>> Either way, I personally don't care that much for another syntax for delegates. I personally just want to see this ugly hack removed from the standard library and discouraged. This feature promotes a code smell. And for what, as you said yourself, to save 4 characters?
>>
>> "a>  b" vs. (a, b) { return a>  b; }
>>
>> Savings: 17 characters.
>>
>
> I reserve the right to dislike it even if it was 20 characters. The fact that it's a useful hack doesn't make it smell less.

It doesn't smell. You believe it does only because you mistakenly 
believe it's not hygienic.

>>> D should be consistent with only ONE delegate syntax. This is why Ruby reads like poetry to its followers and c++ is like carving letters in stone.
>>
>> Also, Ruby is well slower than C++ and other languages. It's easy to
>> design a beautiful language if that's the primary concern. It's
>> difficult to design a language when you want to keep in harmony a larger
>> list of desiderata.
>>
>>> I much prefer that the lowering you mentioned to be implemented so that performance wise this UGLY hack will have no benefits.
>>
>> The lowering will unfortunately solve little. I don't see how
>>
>> sort!"a>  b"(array);
>>
>> is horrible but
>>
>> sort(a, b; array) { return a>  b; }
>
> I wasn't referring to the above which still deals with the syntactic issue.
> I'm talking about making:
>
> sort!"a>b"(whatever);
> and
> sort(whatever, (a, b) { return a>b; });
>
> have the same performance. Thus obviating the need for the first form.

I explained how this is much more difficult than it might seem at first 
sight.

Andrei


More information about the Digitalmars-d mailing list