Steve Yegge's rant on The Next Big Language

Lutger lutger.blijdestijn at gmail.com
Wed Feb 14 04:26:50 PST 2007


Charles D Hixson wrote:

> Which kind of proves what I've been seeing as the point, i.e.,
> D is a complete language, and it's POSSIBLE to do anything
> computable in it.  That doesn't mean it's easy, or worth
> doing, if you have to do it within the D syntax.
> 
> The things that people have been saying are all things that
> are POSSIBLE to do in D...but frequently the techniques for
> doing them are so cumbersome or error prone that the only
> reasonable choice is to avoid them.

The things that been been mentioned are also (not) coincidentally the 
things that are well supported by either the core language or library.
Numerous other techniques are well supported and not cumbersome or
error-prone.
 
> If one believes that a particular technique is desirable, then
> one wishes to have it reasonably easy to use.  Thus, because
> MANY people have thought that templates are a good idea (esp.
> Walter), lots of work and improvement has been done on them.
> Much less work has been done on advanced run-time features,
> which aren't typically used in, at a guess, embedded systems.

Correct me if I'm wrong, but aren't these complimentory? I mean that
the effort that is going into things like templates is meant to make it
easier to support these 'advanced run-time features'? 
 
> But just contrast D's approach with that of Python.  Python
> has long boasted "Batteries Included!".  I don't know if it's
> still on the home web page, but it was for many years.  Or
> Perl's proclaiming of CPAN.  I've never used it, but I'm still
> well aware of claims that programs don't need to check that
> libraries are available locally.  As long as there's a net
> connection, they'll be downloaded automatically.  (That may be
> overselling...but that's the way I've heard it advertised.)
> D, OTOH, is more like Ruby.  Libraries aren't available by
> default, and lots of the ones that are in the repositories
> aren't maintained any more and have suffered from bit-rot.  As
> a result Ruby has Rails programmers, and Python has Python
> programmers, and Perl has Perl programmers.  (OK.  That
> statement's a bit too strong.  But that's the tendency.)

Python is around much longer. It's apples and oranges in another
way too, for Python does not have (nor aims to have) the performance 
of D. DSSS is supposed to be like CPAN, it is still young but pretty 
sweet (if adopted by community).
 
> P.S.:  Partially this note is due to my current frustration
> due to the release of Tango, which won't work with Phobos, and
> therefore means that I can't depend on any particular library
> being installed with a D compiler...with the libraries being
> so different that the same code can't be used with both.

I agree. In some other thread someone remarked upon how easy it was
to write Java code because it is so very standardized, that makes it 
easy to understand and use existing code. In a way D improves on
C++ in that a lot of stuff is not implementation specific, but on the 
library side at the moment the situation is different. 
This is not really a fair critique though since this (I would hope) is a
transient state of affairs, Tango is just out.



More information about the Digitalmars-d-announce mailing list