Recent work on Phobos and asking for volunteers
Andrei Alexandrescu
SeeWebsiteForEmail at erdani.org
Thu Jun 17 21:30:46 PDT 2010
Hello all,
Recently there's been an unprecedented surge of great work on Phobos.
The quality of submissions is excellent and it's very heartwarming to
see that our motley crew team is zeroing in on a shared vision of what
exemplary D code looks like. Congratulations to all participants.
On a related topic, we could use volunteers for other aspects of Phobos
that could use improvement or are simply missing. Bugzilla is clearly
there, and there is one component that needs some serious work:
std.gregorian. It's time to put the politics of the matter behind us and
simply move forward. I suggest we copy Boost's implementation. Jeff
Garland, the creator, is willing to help by responding to whatever
questions we might have. Here's more info from him:
=======================
In the core library custom calendars have never really been applied --
it's usage is something that I never documented well. The primary thing
it allows is the replacement of the underlying integer types. When you
get down to times this actually gets used -- there's an option to allow
either 64 bit integer representation or a 96 bit integer representation
(see split_time_date_system) -- effectively allowing higher resolution.
Frankly, though the 98% case seems to be a 64 bit internal rep for a
combined date-time time.
Anyway, this is the area of the design that I'm least comfortable with
because it hasn't really hasn't been 'tested enough'. I'm going to
have the opportunity later this year as I need to replace a date/time
system that needs leap seconds conversions -- which is the type of thing
the time system customization is there to support -- basically replacing
the internal calculations without having to rewrite the entire wrapper type.
On another note, you should really have a look at the Chrono work that
Howard has done -- it's also based on boost date-time and is what's
going into C++0x, primarily to represent the duration types in support
of the threading interfaces. It has a more flexible type promotion
engine for durations than boost date-time -- on my todo list (which I
never seem to really get to these days) is to upgrade the boost
date-time code to use that system. And really it's about time for me to
make a pass through the entire library and eliminate all the silly stuff
for vc6, gcc2.95 and their ilk....
Anyway, feel free to ask more questions -- I"m sure there will be more :-)
=======================
So, if there is anyone who'd want to tackle this project, that would be
awesome.
Andrei
More information about the Digitalmars-d
mailing list