Standard Library Concerns (Phobos / Tango)

Tim Burrell tim at timburrell.net
Wed Feb 6 13:14:22 PST 2008


Robert Fraser wrote:
> DMD 1.x should remain *very* stable, so only bugfixes should appear 
> there, which Walter has continually provided. As far as Phobos 1.x is 
> concerned, I think some *NON-BREAKING* additions would be nice, but I 
> generally think, besides bugfixes, stability is more important in that 
> branch.
> 
> My requirement (in case anyone cares): If I write an application with D 
> 1.x/ Phobos 1.x today, I want it compiling without change in 2 years.

Personally, I'm looking to the future.  D is in a great position because
it's a new language, and it's starting to pique a lot of interest.  The
next few years are probably a bit of a crucial time for it.  Especially
because when D2 is released it'll _already_ be breaking backwards
compatibility, so there's no issue there.

No one's talking about pulling Phobos and your D1 written Phobos apps
out from under you.

But even so, what we should be doing is figuring out what's best for the
language as a whole, and not what's best for the code we've already
written.  It's easy to keep a copy of Phobos 1.x around or, as others
have suggested, ensure there's a compatibility layer available for
legacy applications.

The problem is really that while, yes, Walter has provided bug fixes, he
hasn't gone the distance in opening up Phobos to other contributors.
There are patch submissions that would fix critical bugs that are months
and months old (there's even a good example on the NG today from Downs).

Phobos development isn't keeping up with demand.  Many people are
frustrated at long standing bugs in Phobos.  Now look at the situation,
we've got two standard libraries, where MOST of the D community is
opting for a library OTHER THAN the alternative!

It's not a healthy state of affairs!

Phobos will _never_ be able to keep up with Tango in terms of
reliability, quality, etc, simply because Phobos isn't really open.
Even just on a pure man hours scale -- Walter can't do it all, nor
should he have to.  He's designed a really great language, but I think
it's time to pass the torch on the standard library.

There are plenty of people who prefer Phobos but agree that Tango is
technically superior.  The fact that there's already a compatibility
layer available makes the legacy code argument that much more moot.

You can have your cake and eat it too!  Everything's basically already
in place!  A new standard library that is open, well maintained, and
that has Phobos compatibility available.

I fully agree 1.x should remain stable, but I also think 2 should drop
Phobos.  It may be in active development now, but the cycle will just
continue!  Now is the perfect time to sort all this stuff out!



More information about the Digitalmars-d mailing list