A suggestion to D community

Yonggang Luo luoyonggang at gmail.com
Tue Sep 16 04:54:25 PDT 2008


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.




More information about the Digitalmars-d mailing list