Reddit: why aren't people using D?

bearophile bearophileHUGS at lycos.com
Mon Jul 27 13:05:20 PDT 2009


Lutger:

>I was referring to your suggestion of adding features to see how they pan out and then removing them, not any particular feature.<

Yes, there's a small contradiction there, because usually there's no a single best solution to a problem, and even oppostite strategies may be both useful in different situations.
But I was mostly talking about finding a way to play very well with an experimental feature before adding it to the real language.


>list comprehensions don't do anything useful over map & friends but make them look better.<

I don't agree because:
- They are indeed syntax sugar, but they allow for shorter, less noisy/cluttered, and more readable code (IF and only if their syntax is really good), this improves code, makes it more readable, avoids errors, etc.
- You often don't need delegates, so:
(x * x for x in xrange(10, 20) if x & 1)
doesn't require the compiler to be able to inline two closures as in:
xfilter((int x){ return x & 1; }, xmap((int x){ return x * x; }, xrange(10, 20)))
(This is code from my dlibs, and it's not much readable. "xsomething" means it's lazy, as in that Python line of code. Phobos2 usually doesn't need delegates here. Currently DMD and LDC aren't able to inline closures it seems no one is interested in this and I don't know why).


>They are super handsome in python in combination with tuples.<

Tuples are very handy, and I'd like to have a good support for them in D. But note that there are no tuples in that code I have just shown.

Bye,
bearophile



More information about the Digitalmars-d mailing list