how to install?

Kris foo at bar.com
Thu Feb 21 21:23:13 PST 2008


eeek ... this is quite wrong Glen, but hopefully some of that can be 
remedied:

The compilers are *not* different in the way you describe them.  There are 
currently two D compilers - one from Walter (dmd) and one based around the 
GNU compiler collection (gdc).  The DMD bundle that people download from 
digitalmars comes with the original library called phobos. The DMD complier 
itself has a Win32 and a linux variation.

On the other hand, the bundles you can download from the dsource (Tango) 
site have three principal options: DMD+Tango/Win32, DMD+Tango/linux, 
GDC+Tango/linux. You can also get the Tango library without a compiler at 
all (for building on another O/S for example). Further, if you want to use 
the phobos library /together/ with the Tango library, you can download one 
of those combined bundles from dsource also (and it is trivial to get both 
libraries functioning together when you use that bundle).

Chris Miller is correct when he draws a distinction between the language and 
the library. However, there's a third part which makes the picture a bit 
murky - there's a 'runtime' aspect also, which includes things like the 
garbage-collector and various other support goodies. Currently those are 
implemented differently between phobos and Tango, although a convergence is 
apparently making some headway.

The combined phobos/Tango bundle you can get at dsource uses the Tango 
runtime, and some very minor tweaks are made to the phobos library to make 
it operate in that environment instead (e.g. the phobos runtime is flushed, 
and the Thread module is mutated). The reason why it's often best to use 
that bundle instead of trying to combine them yourself is this: with that 
bundle there is just one runtime component, and the sc.ini file is 
configured appropriately such that ppl don't have to fuss around with it.

I think many would agree that this is not an ideal situation, but we'll get 
through it. D is a bit of a grass-roots things, and it would arguably be in 
a worse place if developers were merely content with the status-quo. After 
all, /not/ being content with the status-quo is why Walter devised the D 
language in the first place ;)





"glen worstell" <glen at worstell.com> wrote in message 
news:fpl9mb$125h$1 at digitalmars.com...
> Chris Miller Wrote:
>
> ...
>
>> I think you need to make a big distinction.  D is a programming language. 
>> Phobos and Tango are libraries.
>>
>> Standard system libraries like Phobos and Tango are almost part of the 
>> language, but they're not.  I learned most everything I know about D by 
>> reading the DMD 1.0 specification document(1).
>>
>
>
> This seems to me to be very misleading to newbies to d. To clarify, in d 
> the library (phobos or tango) IS part of the compiler implementation, and 
> the compiler you get with tango is not the latest compiler and does not 
> even implement the same language as you get with the latest version of 
> phobos.
>
> The problem for the user is that he/she has to choose one compiler/library 
> over the other. You cannot use one compiler (version) with the other 
> library.
>
> In practice this means that if you spend some time coding with one and 
> then decide to use the other, you will need to rewrite and retest a bunch 
> of stuff.
>
> The latest compiler version will probably always be the one that you get 
> with phobos. As bug fixing and enhancements seem to be happening at a 
> pretty good pace, this is a strong argument for phobos. OTHO, if you like 
> the tango library better (and many people do) and you are satisfied with 
> the particular implementation of the compiler that comes with it (and you 
> don't think it has too many bugs and you don't think you need the d 
> language that comes with the latest compiler which is different in small 
> or sometimes big ways from the one that comes with tango) then you may be 
> happy with tango.
>
> IMHO, this situation is unnecessary and is really, really dumb. OTOH, this 
> stuff is all free and it seems to be pretty good - good enough to use for 
> real world applications. Therefore I want to be careful not to complain, 
> so please take this paragraph as a plea from a user rather than a 
> criticism. In fact, I offer a very large THANK YOU to the phobos team and 
> to the tango team. Having coded in many different languages I offer my 
> opinion of d: it's design is absolutely excellent, and it may someday 
> replace c# as my favorite applications programming language.
>
> g.
> 




More information about the Digitalmars-d-learn mailing list