I'd remove from Phobos:

std.
 openrj
 bigint (old one, by Janice)
 regexp
 socket
 xml
 much, much more (see more complete list in my previous post[1]).

and suggest/force users use tango instead.

std.
  zip
  signals
  outbuffer (there isn't even inbuffer, whee)
  boxer (I like it, but Variant seems to supersede it)
  cover (highly compiler specific, why is it in the stdlib?)

Also, the following modules really belong into core:

std.
  atomics (contains intrinsics for atomic asm instructions, right?)
  intrinsics
  variant (come on!)
  complex
  bind
  bigint

Next steps:
- unify the C import modules
- move modules like std.range into core (magically enables Tango to use it)
- find a common I/O API (and put it into core), which wraps Tango/Phobos specific I/O APIs (personally, I'd prefer having something simple like std.stream [without the interfaces], instead of the clusterfuck in Tango)

PS: It's fine if it's a third stdlib, as long as both Tango and Phobos people agree on it. It's too late anyway, and important, user-visible types like Thread are in core.

Reply via email to