Do we need a time-out in D evolution?
eao197
eao197 at intervale.ru
Tue Jun 5 09:25:03 PDT 2007
I'm watching for discussions 'Stepping back and looking at constness from
another angle' here and 'resizeable arrays: T[new]' & 'preparing for
const, final, and invariant' in digitalmars.D.announce and I'm sad. I
occasionally locked to D may be from 2003 -- it was a constantly changing
language. At the end of 2006 I thought that D is stable enough to start to
use it. And in Jan 2007 the v.1.000 went out. I thought that in near time
D would have only bug fix releases and it is a time when various tools for
D (like libraries and IDEs) would be produced.
But I was wrong.
What we have now? The language which keeps their evolution. Lack of
libraries, lack of tools, lack of documentation (books and tutorials). As
a consequence -- lack of users. And we don't get much new users and new
applications without new libraries/tools/documentation.
As a programmer I need a stable language. A language in which I can write
a domain-specific library and forget about its maintenace for three of
five years (as for some of my C++ libraries those I wrote in 2002-2003). I
need to write applications and because of that I need a quality and stable
compiler, a quality and stable standard library, and quality third party
libraries. And third party libraries' writters need a stable tools too.
But now, when I'm writting some D code, I know that in near feature the
next D version will be here. And that version broke my code because of
consts and new syntax of resizeable arrays. So why to start a new big
project on D if its codebase will be obsolete in few months?
And I'm affraid that after adding consts/final/invariant support to D the
language keeps their envolution :(
Yes consts/final/invariant is a great addition to the language. But D now
is very powerful language. It is now more powerful than C++0x will be. So
may be it is better to stop add new features and make a stable platform
for library/tools writters at first and then for applications writters?
AFAIK, every successful languages were going such way -- the good initial
release and some new releases later with years of stability beetwen them.
And I'm affraid that C++0x will be here before D would get a stable
language with enough libraries and tools.
May be it is better to concentrate on improvement of the current
implementation (fast precise GC instead of the current conservative GC,
for example) instead of introducing incompatible changes in the language?
And my main question is: will be D a constanly changing language or will
be there some time-outs in its evolution?
--
Regards,
Yauheni Akhotnikau
More information about the Digitalmars-d
mailing list