
My point is that floating point representation of a number is in no way a peer concept of rational number. IOW your assertion :
"Examples of basic rational number types in C++: float, double, etc."
Rational numbers are a mathematical concept, not a computer science concept. Floats, doubles and so on hold rational numbers, not irrationals, not integers. Now, are you seriously claiming, as the first poster did, that boost::rational will work whenever you need an arbitrary precision rational number? Or do you have some other point? I really fail to see what you are trying to get at. The only point that you seemed to be trying to make with your examples was that "boost::rational has it's place too..." Again, I fail to see what that has to do with the discussion at hand. No one has said anything different. (That place is just not an arbitrary precision library rational class. For example, notice the calls to gcd() in the constructor. You're toast as soon as you start dealing with large primes.) Joel Eidsath