standardization of D

Clay Smith clayasaurus at gmail.com
Thu Apr 5 08:10:30 PDT 2007


Here are my thoughts:

1) Have two separate compilers, once based on D 1.0 that will 
concentrate on stability, and another one post D 1.0 based on the 
'kitchen sink' of endless features that D seems to accumulate :-P I'm 
actually hoping that somewhere along the line, keywords and features 
will stop being added, once the language is 'good' enough. If we keep on 
adding features forever, we'll get to the same 'different islands of 
programming' problem that C++ has, where only some programmers can use 
some features while other programmers use other features, in fact I'd 
say we have this with templates/mixins now (some folks think it adds to 
much complexity for what its worth), and then you have the difficulty of 
writing a D compiler from scratch.

2) Library issue: Two separate libraries are a pain for users. Maybe the 
D compiler can be bundled with both, with batch/shell script of compiler 
option to switch in between these libraries.

3) Misuse of manpower:

In theory, it would be _nice_ if all the GUI dudes worked on the same 
GUI, and all the standard library dudes worked on the same library. 
Maybe there can be some way to encourage this.


Ameer Armaly wrote:
> Hi all. There are a few things which have been bothering me as of late, and 
> I want your opinions on them to know whether or not I'm jumping at shadows. 
> For starters, we all have a common goal of making D as widely used as 
> possible since we all love the language, otherwise we probably wouldn't be 
> here. At the same time, there are a few factors which as I see it make the 
> adoption of D much more difficult and need to be addressed if we intend to 
> succeed:
> 1. 1.0 doesn't appear to be any special sort of marker with regard to the 
> standard; we have not only CTFE but mixins added post-1.0, along with 
> numerous changes to the _standard_library. I understand the compiler can be 
> made to strictly conform to the 1.0 spec, but the fact still remains it 
> seems very ad hoc. What ought to happen IMO is that we first call a review 
> of the language spec where everyone sends in any complaints they have and 
> they must be clearly addressed to everyone's satisfaction, or at least to 
> the degree that's possible. Then, the spec ought to be frozen for a while, 
> and we work strictly on the standard library, which I'll address later. 
> Then, the whole D language, including standard library, ought to be frozen 
> for several years to let it proliferate throughout the technical community; 
> an experimental compiler can of course undergo development, but clearly 
> marked as such and _separate_ from the stable compiler.
> 2. We have two competing standard libraries; this is nowhere near good. 
> Phobos is basically built on C wherever possible and sort of thrown 
> together, and Tango reminds me of Java with a class for everything and then 
> some. For the standard's sake (and consequent adoption), D needs one 
> accepted standard library. The current state makes that difficult because 
> Walter is forced to hand-manage both the compiler and library. What ought to 
> happen IMO is that Walter should delegate day to day library management to a 
> trusted associate who will occasionally inform Walter of the latest 
> developments; Walter makes the final call, and life goes on.
> So to conclude, these are issues that have been sort of addressed at various 
> times in other issues, but never to a point that accomplished the intended 
> goal. The D community is growing; there are going to be a lot of new people 
> that look at it now and say "Huh? Say again?" Maybe we ought to step back 
> and forget the years we've had to become comfortable with D and analyze it 
> from a potential user's point of view in order to make adoption easier.
> Thoughts? 
> 
> 



More information about the Digitalmars-d mailing list