|
Boost Users : |
From: Joel de Guzman (joel_at_[hidden])
Date: 2006-05-02 19:12:54
Pedro Lamarão wrote:
> Ronald Garcia escreveu:
> I would like to see some "motivating example", like this one from the
> MPL documentation:
>
> http://www.boost.org/libs/mpl/doc/tutorial/tutorial-metafunctions.html
>
> This is, of course, not to say the library seems useless: it is I that
> don't know what to do with it.
Sure that would be nice, but I'm afraid that would not be possible
in the short amount of time given for the review. MPL did not have
the Dimensional Analysis tutorial when it was first reviewed. What
you are seeing now is actually a part of the book that Aleksey and
Dave wrote. Back then, there was a paper titled "The Boost C++
Metaprogramming Library" also by Dave and Aleksey. I guess we could
have written something similar, but then, Fusion is supposed to be
based on the foundations of MPL. A lot of the basics of MPL should
also apply to Fusion. The concepts of metaprogramming, type sequences,
metafunctions, etc., are all based on the foundations already laid
by MPL. You might even want to think of Fusion as an extension of
MPL. In a sense, it is probably safe to say that a prerequisite
for using Fusion is a good grasp of the basics of MPL. If you use
MPL and wish to work on types *and* values, that's where Fusion
comes in.
To give you an idea of the applications of Fusion, Phoenix
(http://tinyurl.com/6crgp), Spirit-2(http://spirit.sf.net/)
xpressive(to be released with Boost very soon now) use Fusion
in various degrees in its foundations.
Regards,
-- Joel de Guzman http://www.boost-consulting.com http://spirit.sf.net
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net