refined sugar (was DMD 0.165 release)

kris foo at bar.com
Mon Aug 21 14:18:31 PDT 2006


Walter Bright wrote:
> I was going to call this 1.0 RC1, but I just could not resist adding the 
> lazy expression evaluation. This adds one of the big capabilities of 
> common lisp.
> 
> http://www.digitalmars.com/d/changelog.html


We could already do "lazy expression eval" in D, using dmd164 delegates; 
sans new sugar. So that Lisp ability was already present?

I like a bit of sugar as much as anyone, especially when it's part of 
some classy dark-chocolate. But there's some practical issues with this 
most recent syntactic sugar. The overload issue is a real one, and the 
added complexity of having to manually check a callee declaration before 
you can grok what happens to an expression arg will also become a 
realisitic problem. Particularly so when you happen to miss a method 
overload in some subclass somewhere.

In this specific case, I suspect there needs to be an indication of some 
kind, at the call site, to clearly and unambiguously communicate to a 
person (and to the compiler) exactly what is going on. Otherwise, this 
may be just the kind of sugar that rots the teeth of D ?



More information about the Digitalmars-d-announce mailing list