A suggestion to D community

Don nospam at nospam.com.au
Wed Sep 17 00:28:37 PDT 2008


Chris R. Miller wrote:
> Yonggang Luo wrote:
>> I care about D about two years. The language attract me but the library. I know there is a lots plenty of good library. Such as Phobos and Tango. But, they are working independently. And even they can¡¯t work together. The Phobos,DWT and Tango have it¡¯s own runtime library. As yet, the D community have DMD, GDC, and LLVMDC in developing, all of these three need it¡¯s own runtime, but the fact is, They can¡¯t work together.  So, in my opinion, we need a bridge to connect these staff together.
>> So, we need a group to write runtime library, it¡¯s support for DMD,GDC, and LLVMDC and even new library. The runtime library will be separate to two part, one is the common part, and the other part will be implement by the Compiler Crafter. And we also need a group to commit to working for that the Phobos and Tango to working together. And we also can add some other library to these. But this working need us to communicate, and don¡¯t do overlap things.
>> At the same time, in fact, we are independent. Why? Suppose we create a project named xdlc(eXtreme D Library Collection), then we create a source tree like this.
>> E:.
>> ©À©¤dwt
>> ©À©¤lang
>> ©¦  ©¸©¤c
>> ©À©¤os
>> ©¦  ©À©¤linux
>> ©¦  ©À©¤macos
>> ©¦  ©¸©¤windows
>> ©À©¤other
>> ©À©¤runtime
>> ©¦  ©À©¤common
>> ©¦  ©À©¤dmd
>> ©¦  ©À©¤gdc
>> ©¦  ©¸©¤llvmdc
>> ©À©¤std
>> ©¸©¤tango
>>     ©À©¤core
>>     ©¦  ©¸©¤sync
>>     ©À©¤io
>>     ©¦  ©À©¤compress
>>     ©¦  ©¦  ©¸©¤c
>>     ©¦  ©À©¤device
>>     ©¦  ©À©¤digest
>>     ©¦  ©À©¤encode
>>     ©¦  ©À©¤model
>>     ©¦  ©À©¤protocol
>>     ©¦  ©¦  ©¸©¤model
>>     ©¦  ©À©¤selector
>>     ©¦  ©¦  ©¸©¤model
>>     ©¦  ©À©¤stream
>>     ©¦  ©¸©¤vfs
>>     ©¦      ©¸©¤model
>>     ©À©¤math
>>     ©¦  ©À©¤internal
>>     ©¦  ©¸©¤random
>>     ©À©¤net
>>     ©¦  ©À©¤C
>>     ©¦  ©À©¤cluster
>>     ©¦  ©¦  ©À©¤model
>>     ©¦  ©¦  ©¸©¤tina
>>     ©¦  ©¦      ©¸©¤util
>>     ©¦  ©¦          ©¸©¤model
>>     ©¦  ©À©¤ftp
>>     ©¦  ©À©¤http
>>     ©¦  ©¦  ©¸©¤model
>>     ©¦  ©¸©¤model
>>     ©À©¤stdc
>>     ©¦  ©¸©¤posix
>>     ©¦      ©À©¤arpa
>>     ©¦      ©À©¤net
>>     ©¦      ©À©¤netinet
>>     ©¦      ©¸©¤sys
>>     ©À©¤sys
>>     ©¦  ©À©¤darwin
>>     ©¦  ©À©¤freebsd
>>     ©¦  ©À©¤linux
>>     ©¦  ©¸©¤win32
>>     ©À©¤text
>>     ©¦  ©À©¤convert
>>     ©¦  ©À©¤json
>>     ©¦  ©À©¤locale
>>     ©¦  ©À©¤stream
>>     ©¦  ©¸©¤xml
>>     ©À©¤time
>>     ©¦  ©¸©¤chrono
>>     ©¸©¤util
>>         ©À©¤collection
>>         ©¦  ©À©¤impl
>>         ©¦  ©À©¤iterator
>>         ©¦  ©¸©¤model
>>         ©À©¤container
>>         ©¦  ©À©¤model
>>         ©¦  ©¸©¤more
>>         ©¸©¤log
>>             ©¸©¤model
>> And, we also can add other library to this tree.
>> And we will create a svn reposity for this. Because svn support external svn, so we can develop every library separately, but using this reposity to collect these library together.
>> But there is some problem with this, it¡¯s need all of us to resolve this problem. That is Phobos and Tango is not compatible. If we solved this problem, the user(Programmer) will be more easy to working with D Programming Language. Because they don¡¯t need to consider to select Tango or Phobos as the base library.
>> And I also think we need to separate the system biding and language binding. Such as c library binding and win32 binding and linux binding. I think It¡¯s more clear. And we also can create a independent project to commit for these area. Nowadays, Phobos and Tango have it¡¯s own Operating System binding and C Library binding, it¡¯s not good that we need to maintain two copy of the source, it¡¯s not meaning full.
>> So, we can discussing with this problem, maybe we will find a better solution.
>> I create a Google group http://groups.google.com/group/xdlc and I create a reposity at http://code.google.com/p/xdlc/, Anyone want to participate this project can post message at http://groups.google.com/group/xdlc or mail to me luoyonggang at gmail.com.
> 
> Great, another tangobos.
> 
> 
> The reason the two teams can't work on it together is that there's some
> licensing issues between the Tango code (which is either BSD or MIT, I
> forget which) and the Phobos code, which is all under the Digital Mars
> License.  It's nutty to the point of making me yearn for the ability to
> drop everything and just go with Objective-C, but the language itself is
> too cool to drop.
> 
> 
> If I remember correctly, the two teams are working on a more unified
> runtime so that when/if the licensing issues ever get fixed they can
> work more closely.
> 
> 
> As it is right now, I see the language in sort of two forms: a bunch of
> Phobos programmers who work with the experimental releases of DMD, and a
> bunch of Tango programmers who work only with stable releases of the
> compiler.  That's just my perception, it's not necessarily what reality is.

I'm part of both groups. In fact I've developed Tango code using Phobos, 
and Phobos code using Tango...

More accurately, ordered based on SWN commits:
Phobos has been developed by Walter, Andrei, Bartosz, me,  Janice (who 
seems to have disappeared), and Brad.
Tango has been developed by Kris, Sean, Lars, me, keinfarbton, Gregor, 
and 20 others.

> Truth be told, it's much more like that person who compared us all to
> various characters from "The Muppets."  In which case, I am not a
> shrimp, I am a King Prawn!



More information about the Digitalmars-d mailing list