Does D have too many features?

Iain Buclaw ibuclaw at ubuntu.com
Thu May 3 17:13:27 PDT 2012


On 3 May 2012 16:13, Don Clugston <dac at nospam.com> wrote:
> On 03/05/12 16:13, Andrei Alexandrescu wrote:
>>
>> On 5/3/12 9:55 AM, Don Clugston wrote:
>>>
>>> On 28/04/12 20:47, 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?
>>>
>>>
>>> Other ones which were agreed to a long time ago were:
>>>
>>> * NCEG operators
>>>
>>> * built-in .sort and .reverse
>>
>>
>> Good ones. In fact I even discounted them from this discussion because
>> I'd already considered them gone. Walter agreed that I don't mention
>> them in TDPL, with the intent to have them peter out.
>>
>> One good step right now would be to remove NCEG operators from the
>> online documentation. Later on, we'll consider them an accept-invalid
>> bug :o).
>
>
> Well, they are also used in druntime, in core.stdc.math
>
> BTW I *hate* that module, I don't know why it exists. Even worse, it seems
> to be growing -- people are adding more things to it.
> Practically everything in there has a better implementation in std.math.

I used core.stdc.math to map GCC builtins to math lib functions.  This
allows for a lot of potential const folding that the D frontend does
not (currently) handle.

-- 
Iain Buclaw

*(p < e ? p++ : p) = (c & 0x0f) + '0';


More information about the Digitalmars-d mailing list