Wiki Navigation

Welcome to std2

ATTENTION:Due to the advances in the D2 compiler, and also to increased and more advanced usage of D2 features the standard library, as of DMD 2.011 I find that it is quite difficult to backport D2 code to D1, and it looks like it will not be possible without spending huge amounts of time on it. So I'm afraid std2 is going to stay with the 2.008 version forever. My apologies. On the bright side, it is nice to see Phobos under such active development again, even if it is D2 only.

The std2 project is a collection of ports of Phobos 2.x modules to D1.x.

Why? Phobos in D2.x contains some nifty additions. Most of these have nothing to do with the additional language features of D2.x, and can be ported fairly easily to D1.x, mosly by stripping out the const and invariant everywhere. Unfortunately, the official D maintainers have declared that neither D1.x nor Phobos 1.x will have any new functionality added.

So this project aims to make some of the Phobos 2.x functionality available to D1.x users via a 'std2' package.

Currently the port consists of the following Phobos modules, ported from DMD Phobos 2.008:

The idea is that you substitute one of those std2 modules in place of an import of the regular std module to get the new functionality.

The ports are currently maintained by Bill Baxter. I don't plan to spend a whole lot of time on this, but it shouldn't require a whole lot of time. At least not for the time being. The above modules took about an hour to port altogether. Volunteers to port new modules and apply updates when new DMD's are released are certainly welcome and encouraged. Any developers who would like SVN commit access, let me know.

Installation

Using DSSS

Std2 can be installed using dsss via its net install feature. All it takes is to type the following command at a command prompt: