|
Boost : |
From: Brook Milligan (brook_at_[hidden])
Date: 2008-07-26 23:20:27
Alp Mestan writes:
> I ask for the first, but depending on what you'll show I could ask for the
> second.
Well, the short answer is that all the obvious main operators are
supported. This includes all the comparison operators, the two unary
operators, the two additive operators, and the two multiplicative
operators. Notable exceptions are things like shift operators,
modulo, etc., but that is mainly because I haven't needed them just
yet and haven't quite gotten around to implementing them. There are
no substantive issues blocking that though.
>From the library developers' viewpoint, any or all of these may be
implemented using techniques that essentially duplicate those
described for the polynomial example. Indeed, I am refactoring my
Probability library (which requires a fairly rich set of operators and
functions) to use this framework. Thus, if you can imagine a set of
domains, appropriate implementations of the operators, and the
interconversions, the library should support it.
The long answer, i.e., how _exactly_ to do all this to develop a
library, will have to wait a bit more until I can tidy up the code and
write more documentation. I'm hoping that won't take too long, so
please stay tuned.
In the meantime, I really am interested in feedback on the overall
design (e.g., idea of making this type of library systematic, the
means of providing extensibility, etc.) and improvements in the
implementation.
Thanks for your interest.
Cheers,
Brook
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk