What are the prominent downsides of the D programming language?
Dukc
ajieskola at gmail.com
Tue Sep 29 16:11:29 UTC 2020
On Monday, 21 September 2020 at 09:29:21 UTC, Tomcruisesmart
wrote:
> Hi,
> I'm looking for healthy conversation.
> What are the prominent downsides of the D programming language?
-There tends to be a need to switch between compiler versions.
Sometimes one may even have to use two different versions for the
same project.
-Typical D projects tend to require compiling everything at once.
The main reason this is a problem is that you can't use different
compiler flags for different parts. It's no worse than on the
mainstream object oriented languages, though.
-Heavy use of templates still worsens error messages. They are
clear enough that an average programmer won't, in general, hit
the wall. But it tends to require several attempts and/or reading
the docs to fix template-related errors, as opposed to
untemplated error messages like: "function call `serialize` not
found, did you mean `serialise`?".
-Using templates and defining simple ones is easy and tidy. But
defining really good templates tends to get difficult. Look at
Phobos source code: complex template constraints. The most recent
D blog entry give a good taste of what it's like. On the other
hand, in other languages you'd have to resort to macros to do
similar stuff at all...
-Expressing complex data, especially if it's dynamically typed
(at least out of the box, without third party libraries). D tends
to be good at processing data but not so good in initializing it.
Unit tests tend to get longer than I'd imagine them being in Lua
or JavaScript.
More information about the Digitalmars-d
mailing list