July 14, 2007Re: Two standard libraries?
Tristam MacDonald Wrote: > The problem is that I (as a user) want to use one library. And if one 3rd party library I want to use depends on Phobos, and another on Tango, they either have to be entirely interoperable - correct me if I am wrong, but this doesn't seem to be the case - or I end up rolling my own, because neither one does what I want. > > I quite frankly don't like Tango's Pythonesque 'batteries included' approach, but that is of course entirely a matter of personal opinion. I am not fond of Phobos either, mostly because of a complete lack of templated containers. > > What I would like to see is an approach which combines a small, lean 'core' library (just the basics like IO and containers), and then have the 'batteries' implemented as distinct small libraries on top of the core. This allows one to choose exactly what functionality one needs, with out the extra 'fluff'. > > Robert Fraser Wrote: > > > What's so wrong with having two standard libraries and letting users choose the one they feel more comfortable with? Having come from a Java background, I find Tango much easier to work with and powerful than Phobos, but to each his own. I just wish it was easier to link against one or the other (compiler switch...) instead of having to switch between them all the time. > > > > Steve Teale Wrote: > > > > > It bothers me that Phobos and Tango seem to be completely divergent. One of the things that makes a language successful is that it has a good standard library. It seems that with D, you have to be a betting man - which standard library will prevail. > > > > > > It seemes to me that given Walter's definition of the language - a system programming language - that Phobos is closer to the mark. If users want a more object oriented standard library, that's all well and good, but it should be a shoe-in, then if you want to use the OO stuff you can, but code that's been written to work with Phobos should work unmodified with other libraries. (Note the recent discussion on C++ security). Any other approach seems to me to reek of vanity. > > > > > > I am not saying that Phobos is perfect. It has lots of omissions, but I have a feeling that it is about at the right level to enable authors to write the more OO stuff on top of it. > > > > > > I'm sure that this is a sensitive subject, but there you go! I think we all agree that Walter has done a damn good job on D, so why should we reject his thinking on Phobos? I've been watching Walter for a long time now, and in my book, he knows as much about his subject as anyone does, especially considering the coverage that's expected of him. > > > > > > If D is to succeed, I think we should work together rather than compete. I'd like to see a much more formal system for contributors to take responsibility for areas of Phobos. Maybe it exists, but if it does, it's hardly in your face. I'd also like to see people back off on trying to replace it. Let's improve it and augment it. > > > > > > > > > Your point is what got me going in the first place. I wanted to use DDL, and the first thing the documentation told me was to install Tango.