Which language futures make D overcompicated?
H. S. Teoh
hsteoh at quickfur.ath.cx
Fri Feb 9 19:19:03 UTC 2018
On 8 February 2018 at 23:54, Suliman via Digitalmars-d
<[1]digitalmars-d at puremagic.com> wrote:
>
> I like D, but sometimes it's look like for me too complicated. Go
> have a lot of fans even it not simple, but primitive. But some D
> futures make it very hard to learning.
>
> Small list by me:
> 1. mixins
> 2. inout
> 3. too many attributes like: @safe @system @nogc etc
But none of these features are *necessary* to start coding in D. They
are optional extras that are nice once you're comfortable with the
language. I got by fine for *years* without even using a single mixin,
or knowing what 'inout' does, or use any attributes.
It's like human language, there's a set of core words ("basic features")
that you have to know to hold a conversation, but there's a vast
vocabulary of more specialized words ("advanced features") to draw from
when you need to be more precise or in special situations. You don't
need to know the *entire* language to be functional in it. E.g., there's
a vast body of scientific vocabulary that 90% of the general population
(of native English speakers) has no idea about. Yet they can live and
function in society just fine. But that vocabulary is there when you
*do* need it.
It would be a worthless language if it's extremely easy to learn but can
only attain to the complexity level of baby-talk. Turing machines
technically can compute the same thing as D can, and they are about as
simple as it can possibly get while still being Turing-complete. But do
you really want to write non-trivial program in Turing machine?
Probably not.
On Fri, Feb 09, 2018 at 11:13:13AM -0800, Manu via Digitalmars-d wrote:
[...]
> 2. Wrong defaults for attributes
Unfortunately, this is a historical accident that's not easy to fix.
Short of doing a D3 iteration, but I don't see that happening anytime
soon.
> 3. string mixins always used in place of some sort of more sanitary
> macro system
[...]
That gave me a double-take. "Sanitary" and "macro" in the same
sentence?! That's just ... I know what you *mean*, but the thought is
just, wow. :-D
T
--
They pretend to pay us, and we pretend to work. -- Russian saying
More information about the Digitalmars-d
mailing list