The current status of D?

Don nospam at nospam.com
Sat Dec 3 18:53:09 PST 2011


On 04.12.2011 03:40, Timon Gehr wrote:
> On 12/04/2011 03:10 AM, Don wrote:
>> On 04.12.2011 00:13, Timon Gehr wrote:
>>> On 12/04/2011 12:09 AM, David Nadlinger wrote:
>>>> Famous last words:
>>>>
>>>> On 12/3/11 11:47 PM, Timon Gehr wrote:
>>>>> There is nothing wrong with is(XXX), […]
>>>>
>>>> David
>>>
>>> An explanation would be more helpful.
>>
>> For many years is(xxx) been reviled as the ugliest thing in the
>> language. The simple forms are OK, but features kept getting piled onto
>> it until it became clearly unworkable.
>
> So why not keep the simple forms and just replace the more obscure
> functionality that is better expressed by other means?

Yeah, that's the idea.

> Removing is expressions entirely would break most D code (at least it
> would break all of mine).

Yes. Nobody's ever proposed complete removal of is expressions.
It's the things like:
is (foo bar == super)
which I think you can't understand without looking up the spec every 
time. We still don't have a nice way of expressing such things.

>
>>
>> And there are stupidities like:
>>
>> alias void delegate () dg;
>> alias void function () fn;
>> static assert(is (dg == delegate)); // true
>> static assert(is (fn == function)); // fails!
>
> I'd like to just see that fixed, but then old code would be silently
> miscompiled...


More information about the Digitalmars-d mailing list