
Complete version history
========================

############################################################################## 
Math::BigRat:

2001-11-21 v0.01 Tels
 * first release
2002-02-24 v0.02 Tels (late night)
 * ripped out doc and replaced by something closer to the truth
 * subclass of BigFloat w/ overload section
 * uses d/n instead of x/y for denominator and nominator
 * tests from Math::BigFloat with a test subclass warping the input/output
 * added preliminary bmul(), badd(), bdiv() methods
 * added binf(), bone(), bzero() and bnan()
 * added _bzero(), _bone(), _bnan() and _binf() (bnan() etc inherited)
 * dummy blog(), bceil(), floor(), bfac() and bpow() functions
 * parse input as '0.1', '0.1/0.1', '1/10', '10' or '10/0.1'
 * input as Math::BigInts or Math::BigFloats is okay
2002-02-25 v0.03 Tels (early morning hours)
 * fixed bstr()/bsstr() for negative output and inf/NaN
 * _d/_n were accidentily swapped
 * added numerator()/denominator()/parts() and doc and tests
 * fixed is_one()
 * '1/ ' is as invalid as '1/'
 * badd/bsub/bmul: inf/NaN handling was wrong due to copy&paste (ha!) from bdiv
 * more extensive testsuite (about 400 tests)
 * bnorm() normalizes 0/x to 0/1
 * badd()/bsub()/bmul()/bdiv() handle +/-/NaN/inf/-inf sign properly
 * t/Math/BigRat/Test.pm: fixed bstr() and bsstr() to handle inf/NaN and signs
2002-03-19 v0.04 Tels
 * bcmp/bacmp/as_number/bfloor/bceil work now
 * bsqrt() is better now
 * t/Math/BigInt/Test.pm is fixed now and makes a much better figure
   (formerly almost all of the 1500 tests in bigfltrt.inc would fail. Now we
   fail "only" 868 of 2014 tests, and most of them since the test dies early.
 * added stubs for round, bfround, bround and certain others
2002-03-19 v0.04 Tels
 * 5/7+3/7 hung under "Math::BigInt upgrade =>" (forgot local upgrade = undef)
 * better testsuite
 * added & fixed isa()
 * new() can handle Lite
2002-03-26 v0.05 Tels
 * various bugfixes
   (local undef upgrade, Bigint handling, handling of string arguments)
 * fixed up isa()
 * removed some old and wrong comments
2002-05-23 v0.06 Tels
 * added import() routine
 * support for 'use Math::BigRat with => Foo::Bar;'
 * support for 'use Math::BigRat lib => Foo::Bar;'
 * bnorm() makes sure that both parts (n and d) are of class $MBI
 * more documentation
 * bugfix in new() with two arguments
 * INSTALLDIRS => perl
2002-06-04 v0.07 Tels
 * bfac() now works for integers (x/1), and returns $x->bnan() instead of
   Math::BigRat->bnan() (modify in-place)
 * bpow() faster for x/1 ** y/1 and x/z ** y/1 cases (some of the speedups are
   two-digit factors :) - also some bugfixes
 * bpow() no longer litters stdout
 * removed some (all of them commented out) debug prints to reduce footprint
 * shortened testfile bigrat.t
 * some hardcoded 'Math::BigInt' replaced with '$MBI'
 * bceil() would leave -0 in some cases
 * (more) tests (all in all 628) for:
   bceil/bfloor/bpow/bfac/parts/denominator/nominator/binc/bdec
 * parts('-3/1') would return (3,1) instead of (-3,1)
 * parts() did not work for NaN, +inf, -inf
 * numerator()/denominator() did not work for inf,-inf,NaN
 * new('1.2.2') was valid (resulted in 12/10 due to bug in BigFloat)
 * new() for some cases left internal state not as 0/0 for NaN, inf, -inf etc
 * binc()/bdec() were missing entirely

Please send me test-reports, your experiences with this and your ideas - I love
to hear about my work!

Tels <http://bloodgate.com/>
