What do you want to see for a mature DLang?

Patrick Schluter Patrick.Schluter at bbox.fr
Sat Dec 30 09:13:29 UTC 2017


On Friday, 29 December 2017 at 22:05:31 UTC, I Love Stuffing 
wrote:
> On Friday, 29 December 2017 at 09:46:05 UTC, JN wrote:
>> AFAIK Rust doesn't have templates, but generics. Generics 
>> usually have much cleaner error messages because they are 
>> mostly used for generic functions and classes, meanwhile 
>> templates can do that too but much, much more, but when they 
>> break, you get entire paragraphs of template errors.
>
> Templates are bad because they write code for you. And it's 
> that code you don't write that could have errors. It's a double 
> edge sword.
>
> Also, for a mature D, some damn collections. Queues, Stacks, 
> Deques, etc...

Yes, it's the same issue in C when using complicated macros. You 
have to do all substitutions by hand to understand the real error 
message. D templates have more information so there's hope to get 
a better resolution of the error cause.
But, the error message thing is a double edge sword, the more 
information is given the more difficult it gets to quickly find 
what the issue is.
Again to illustrate with my C experience (sorry I'm paid for 
programming C, D is hobby that I try to sneakily introduce). The 
gcc 4 error messages were simple 1 lines errors, from gcc 5 on 
they introduced the multi-line errors with positioning like in 
that Rust example above. At the beginning I was quite happy with 
that as the error messages are so much more detailed, but now 
after some time, I find them really annoying as it is much more 
eye straining to find the real error message in between the 
positioning text.



More information about the Digitalmars-d mailing list