does D already have too many language features ?
Cym13
cpicard at purrfect.fr
Mon Apr 8 11:11:34 UTC 2019
On Monday, 8 April 2019 at 09:46:06 UTC, adam77 wrote:
> Hello everyone,
>
> I started using D as an alternative to Java, what attracted me
> to D was the robust memory management (including the way arrays
> are handled), and interoperability with C (specifically
> libraries) so far so good, but almost every language out there
> (maybe with the exception of C) seems the eschew language
> stability in favour of adopting whatever the latest fad is in
> programming languages features. I see on forums for a number of
> languages how features like lambda's or auto properties are
> essential to their language or if they are missing some feature
> how its a major detriment to the language. I sometimes wonder
> how a Turing machine could ever manage...
>
> I'd be interested to hear other peoples opinion, does the
> language have enough features? is it already overloaded with
> features ?
>
> Any help will be appreciated!
From my point of view, yes, but that's not the end of the story.
I come from python where there's a strong community incentive to
have everyone use a similar style and lots of discussions are
focused on what's "pythonic", ie what is "the best way" to solve
a problem or write a piece of code.
This is not how D should be approached. D is more akin to C++
where every feature ever is present (or will eventually be as
more people advocate for more features). Not all of these
features work well together, far from it. This means that, like
in C++, you should define at the beginning of the project what
style you want to use and what set of features you want to base
your code on. Then mostly restrict yourself to those core
features.
That's why you see C-like D, code based mostly on classes and
OOP, fiber based code, @safe code, range code, mallocator code...
I don't know how things are in java, but understanding and
accepting that it is in my best interest to restrict my set of
features was somewhat new to me. That said it also means that D
can tackle most issues without ever needing to change language
and that's nice too. So while I dislike cluttering the language
with features I guess the issue is more in how I see it.
More information about the Digitalmars-d
mailing list