D learning curve

Robert Fraser fraserofthenight at gmail.com
Sat Jun 14 17:07:16 PDT 2008


Charles Hixson wrote:
> On Sat, 14 Jun 2008 12:18:00 +0200, Lutger wrote:
> 
>> Sascha Katzner wrote:
>>
>>> Jarrett Billingsley wrote:
>>>> ..You could look at the library code and projects at dsource that is 
> being
>> written. Most projects and almost every big project uses Tango. That is
>> maybe even more important than the number of users.
> 
> Which is[was?] a real problem as, for me at least, tango keeps breaking 
> with each new release of D.  And I didn't find DSSS to be all that 
> workable either.  DMD works fine, and so does Phobos.  Tango was unending 
> problems.  And I frequently switch to DMD2 for a new release (and 
> sometimes switch back to DMD), so Tango isn't even consistently an option.
> 
> Perhaps some of the problems of which I'm complaining have been fixed.  I 
> last checked over 6 months ago.  But I'm not real inspired to try it out 
> again, either.  If I wanted to spend all my time fighting with my 
> computer I'd install Gentoo.
> 
> The upshot is that if a project requires Tango, I generally assume that 
> if I try to use it I'll end up spending all my time in compilation and 
> configuration, and figuring out why what I tried didn't work.  I don't 
> know what configurations the Tango people expect a system to have, but 
> mine doesn't have them.  Once I tried setting up a special user who only 
> executed DMD1.x (forget which version) with Tango.  After 3-4 days I gave 
> that up as a bad job.  I didn't even know why it wasn't working.

I've never had problems this bad, but I am disappointed that Tango 
releases make no attempt to be backwards compatible (they deprecate some 
syntax for one release and then get rid of it). Already, the simplest 
code in the book is not working. Pretty soon, anything that depends on 
the old collection packages is going to break. If you want to use two 
libraries that depend on different versions of Tango, you're going to be 
spending some time fixing them up.

Of course, Phobos 2 might have this problem, I'm not sure.

> OTOH, I've got to admit that many people seem to really like Tango.  And 
> I have no clue as to what the differences between our systems are.  
> (Though there's probably typically so many differences that even that 
> wouldn't help much.)

The GC/runtime/IO is faster & less buggy than Phobos's in general, so 
for production code (or code you want to be blazing fast), Tango is th 
better choice. The upper-level library also has a MUCH nicer API, IMO 
(you can use it Java-style, like I do, or C/free-function style if you 
prefer, while Phobos is a hodgepodge of different APIs that don't fit 
together as well).



More information about the Digitalmars-d mailing list