Does D have too many features?

Manu turkeyman at gmail.com
Sat Apr 28 15:30:44 PDT 2012


On 29 April 2012 00:42, Peter Alexander <peter.alexander.au at gmail.com>wrote:

> On Saturday, 28 April 2012 at 18:48:18 UTC, Walter Bright wrote:
>
>> Andrei and I had a fun discussion last night about this question. The
>> idea was which features in D are redundant and/or do not add significant
>> value?
>>
>> A couple already agreed upon ones are typedef and the cfloat, cdouble and
>> creal types.
>>
>> What's your list?
>>
>
> Here's my list:
>
> - Properties. They add no value and just start pointless discussions about
> what should and shouldn't be a property.
>
> - UFCS. It's just sugar, but adds complexity.
>
> - const/immutable/inout/shared/**pure. These add massive complexity to
> the language for little (IMO) benefit. When I do multi-threading, I usually
> have to resort to casting. Maybe these will improve with time.
>
> - opDispatch. I think it just promotes sloppy, obfuscated code for minor
> syntactical benefit. Member access through pointers should require -> like
> in C++ so that you can overload it for smart pointer/reference ADTs.
>
> That's all I can think of for now.
>

I disagree with every one of those points, except maybe 'shared', which
seems like a good idea in theory, but I think it's completely broken (every
interaction requires an explicit cast, and there is no facility for
transfer of ownership, which is a VERY common operation in my experience)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20120429/d39fc1c2/attachment.html>


More information about the Digitalmars-d mailing list