
--- Andy Little wrote:
'name' which is "rational" in class template "rational" is an alias in class scope for 'name'<input_parameters>. What this is really about is potatoes and potatoes. So it is reliant on input parameters.
Understood.
I am arguing for a normalised version, so for my_rational<2,8>, my_rational<3,12> and my_rational<5,20> among others, the normalised version is my_rational<1,4> and thats what I think rational<...>::type should return.
Okay. I'm not working on rational at the moment, so a patch would be appreciated.
Secondly, are the next and prior members necessary? IMO they only make sense for integers.
They are provided for consistency with Boost::Rational, which implements increment and decrement operators.
Just because rational does it doesnt mean its not daft... ;-) Does anybody **seriously** use that feature of Boost.Rational?
You can surround the offending typedefs with #ifdef BOOST_MPL_CFG_USE_MATH_RATIONAL_NEXT_PRIOR and #endif in your patch. Anyone that wants to use the typedefs can #define the macro themselves. Those of you who use boost::counting_iterator with Boost.Rational, we'd like to hear from you. Cromwell D. Enage __________________________________ Yahoo! FareChase: Search multiple travel sites in one click. http://farechase.yahoo.com