Preliminary submission - std.rational and std.typelist

Arlen arlen.ng at gmx.com
Sat Oct 6 10:03:39 PDT 2012


Greetings,

In one of my D projects a units library was needed, so I decided to port Boost.Units to D.  I've been working on it for the past month or so (mostly on the weekends), and It's about 90% done.  The work has also produced additional functionality not yet available in Phobos, so I've decided to separate them into their own modules and present them here as my preliminary submission.  At the time I wasn't aware of the Boost submission process, otherwise I would have done "Determine Interest" first.  Hopefully nobody has ported Boost.Units to D.

So far the completion of the units library is contingent on the finalization of the design and implementation of the following two modules:

std.rational, which is a small module for rational numbers.
Source:  https://github.com/Arlen/phobos/blob/units/std/rational.d
Docs:  http://arlen.github.com/phobos/std_rational.html

std.typelist, which provides the TypeList type and several metafunctions.  The metafunctions are pretty much stolen from Haskell.  
Source:  https://github.com/Arlen/phobos/blob/units/std/typelist2.d
Docs:  http://arlen.github.com/phobos/std_typelist2.html


I wasn't aware that we already had std.typelist module in Phobos until I was ready to submit my work.  I suppose the work was abandoned or it was never finalized?  There are differences in typelist2.d and typelist.d, though.

I would be interested to know if there is any interest in a units library.  I certainly need it in my project, and I will make my preliminary submission available to the community once it's complete.

Thanks,

Arlen


More information about the Digitalmars-d mailing list