Actually I've generated std.all myself and experimented with it
(attached). The parse time with rdmd is larger than with individual
modules, but not annoying.
Recently there seems to be a problem with BigInt. Trying to add std.all
to the Phobos build yields the bizarre error:
std/all.d(7): Error: module bigint from file std/bigint.d conflicts with
another module bigint from file std/bigint.d
Looks like a compiler bug.
Yes, generation of std.all can and must be automated. It's very easy to
do so inside the makefile, which has a list of all modules. However,
there's a problem with the Windows makefile which is underpowered.
Andrei
On 06/08/2010 12:02 PM, David Simcha wrote:
Does anyone have any objections to adding a std.all to Phobos, which
would just publicly import all of Phobos? This would make it much
easier to write small script-style programs in D, since so much
functionality that's built into languages like Python and Perl is
scattered across several Phobos modules in D. The library functions
work as well as builtins after they're imported, but having to add 10
import statements to a simple 50-line program to get this functionality
gets a little tedious at times.
If we add std.all, is there any easy way to automatically keep it in
sync as new modules are added to Phobos, or would this have to be done
manually?
_______________________________________________
phobos mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/phobos
module std.all;
public import std.algorithm;
public import std.array;
//public import std.atomics;
public import std.base64;
public import std.bigint;
public import std.bitmanip;
public import std.boxer;
public import std.compiler;
public import std.complex;
public import std.contracts;
public import std.conv;
public import std.cpuid;
public import std.cstream;
public import std.ctype;
public import std.date;
public import std.datebase;
public import std.dateparse;
public import std.demangle;
public import std.encoding;
public import std.file;
public import std.format;
public import std.functional;
public import std.getopt;
public import std.intrinsic;
public import std.iterator;
public import std.json;
//public import std.loader;
public import std.math;
public import std.md5;
public import std.metastrings;
public import std.mmfile;
public import std.numeric;
public import std.outbuffer;
public import std.path;
public import std.perf;
public import std.process;
public import std.random;
public import std.range;
public import std.regex;
public import std.regexp;
public import std.signals;
public import std.socket;
public import std.socketstream;
public import std.stdint;
public import std.stdio;
public import std.stdiobase;
public import std.stream;
public import std.string;
public import std.syserror;
public import std.system;
public import std.traits;
public import std.typecons;
public import std.typetuple;
public import std.uni;
public import std.uri;
public import std.utf;
public import std.variant;
public import std.xml;
public import std.zip;
public import std.zlib;
_______________________________________________
phobos mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/phobos