Blaming the D language

via Digitalmars-d digitalmars-d at puremagic.com
Tue Oct 21 23:35:08 PDT 2014


> There is no backport/bug fix for the stable releases like gcc 
> or other well know software, gcc has at least the latest 3 
> stable version maintained, when a bug is found it's fixed on 
> all of the maintained versions that suffer from it.

Yes, I agree. I've also complained about not having a stable 
version in the past. The attitude in the D community is that 
having one stable and one experimental branch is not desirable. 
And for some reason it is claimed that D is production ready. I 
don't agree, and I think exposing that view leads to problems.

It means that features that should have stayed experimental go 
into the mainline and remain there, and that more half-way 
features are being added rather than worked on theoretically 
until a general and more clean solution is found.

I believe you will be happier if you view D as being in an 
experimental state. And I think it is a valuable experiment too. 
Especially the static reflection capabilities in a C++ like 
language is interesting to think about. That is what makes D most 
interesting to me at the moment.

> It's so sad to see interesting projects using the D language 
> abandoned tired of code breakage with any dmd compiler 
> evolution.

The D designers have expressed an interest in gofix which upgrade 
source from an old version to a newer version.

Requirements for this to be fully automatic:
- Add a version identifier in the head of each source file, 
currently not possible?
- Remove string mixins!!
- Careful addition of new features.

> Now let's see std.str I expect some functions that are widely 
> available on other languages to be present there but some of 
> then are std.algorithm, std.array, std.container, std.format 
> and even on std.str it's crazy for a new developer to find 
> things on phobos.

Yes, I agree. Phobos is a mix of useful, esoteric and 
experimental features. It should be broken down in a different 
way.

I have recently started to map out the standard features of 
Haskell and looking at how to represent them in D.   The API and 
structure of phobos need some work. I think the overrated C++ 
standard library has influenced phobos too much.

I also want to see string mixins removed from phobos. It is a 
very ugly feature. I think phobos should move 100% to lambdas and 
work on the optimization of lambdas if it is a problem.

> Well I'll update time to time this post and encourage others to 
> do the same hopping that this will drive positive changes to 
> the D language.

I like your attitude, but keep in mind that C++ has many more 
people behind it. I've changed my view to look at D as being in 
an experimental state. I think the desire to expand features go 
beyond the capacity of the project both in the compiler and 
libraries.

And since the compiler is written in C++, it is difficult to make 
big changes. Compilers written in functional languages such as 
Haskell or OCaml are more open to experimentation.


More information about the Digitalmars-d mailing list