2008-04-03 1.28 Tels 662 tests

Older version history:

############################################################################## Math::String:

1.02: fixed new() as copy, bstr works now, dropped multiple charsets 1.03: 02/2001: added support for Math::String::Charset and thus bi-grams

added: caching for more speed 2001-02-14 1.04: fixed inheritance/overloading bugs (objectify)

finally got rid of copy&paste overload 2001-02-16 1.05: fixed overload bug in cmp (Math::String cmp something other) 2001-02-22 1.06: fixed: digits() => length() 2001-03-18 1.07: fixed: documentation
2001-03-25 1.08: added: support for caching of string form 2001-04-13 1.09: as_number: returns now Math::BigInt 2001-05-07 1.10: finally got rid of C&P of overload section 2001-05-13 1.11: added accuracy/precision/fallback/rnd_mode and tests for this 2001-07-08 1.12: added bnan(), binf(), fixed $x->bzero(), added test for these

fixed bug in copy() code in from_number() 2001-07-26 1.13: new( { str => 'abc', num => '123' } ); 2001-08-08 1.14: bstr() was not caching string form, some more tests

copy() does no longer make a (costly) true copy of the charset 2001-09-01 1.15: unreleased

                 binc(), bdec() modify cache for speedup (instead clearing it)
                 added bone(), is_valid(), maxlen(), minlen()
2001-11-05 1.16: added class() 
                 binc(), bdec() modify cache instead of clearing it (speedup)
                 added bone(), is_valid(), minlen(), maxlen(), type(), class() 
2002-02-20 1.17: removed debug output
                 corelib => config()->{lib}
2002-02-28 1.18: binc()/bdec() four times as fast
                 as_number twice as fast
2003-02-06 1.19: removed some needless return statements
                 removed debug printout "changing charset..."
                 added __END__ marker for faster loading
2003-04-07 1.20: added: scale()
                 as_number() uses scale to scale output

2003-04-10 1.21: fixed: bug in UNIVERSAL::isa() call in fromnumber 2003-04-22 1.22: prefer Math::BigInt::GMP on use 2003-07-26 1.23: removed shebang line
2003-12-11 1.24 Tels 599 tests

2000-02-07 1.02: first version with bi-grams 2000-02-14 1.03: fixed: simple charsets to work now,

added: _end hash and ones set 2000-02-16 1.04: added: char(), charlength() 2000-02-17 1.05: fixed: chars with diff. len raise error, works now with

                        characters of length > 1
                        some slight optimizations for simple charsets
2000-02-22 1.06: fixed: documentation (fill-characters, die on error)
                        toggle $Math::String::Charset::dieon_error
                        num2str() is now about a small, constant amount faster
2000-03-18 1.07: fixed: documentation
                 added: separator string/char for 'the lazy fox' style strings
                        renamed type() to order()
                        documented that length() always returns count of chars

2000-03-25 1.08: added: next(), prev() for simple charsets (cache in M::S) 2000-06-26 1.09: fixed: bug accessing BigInt's internals, fails for BitVect etc 2000-09-01 1.10: split: into Charset, Nested and Grouped

                 fixed: next()/prev() work now
                 added: support for minlen, maxlen, ones(), type()
2000-10-19 1.11: fixed: Math::BigInt::bzero() => Math::BigInt->bero()
                 split Charset.pm into
                        Math::String::Charset::Simple  (type = 0, order = 1)
                        Math::String::Charset::Nested  (type = 0, order > 1)
                        Math::String::Charset::Grouped (type = 1, order = 1)
                 added: support for minlen and maxlen
                        ones(), count(), zero(), one(), type() and tests
                        next/prev actually work
                        analyze is alias for study, can export analyze
                fixed:  better error handling upon initialization
                        is now subclassable
                        first()/last() work now with sep char, added tests
                        make Math::String->first($length,$set) work
                         (and last(), too), test for it
                        study:
                         'chars' and 'start' for depth => 1
                         depth as alias for order
                         can return histogram (hist => 1)
                         now works for the "hocuspocus" example
                         tests are now in seperate file 

2003-02-06 1.12: added __END__ marker for faster loading 2003-04-10 1.13: added scale() and scale as parameter to new() 2003-04-22 1.14: fix for scale not beeing a legal parameter to new()

                 prefer Math::BigInt::GMP on use
                 added method copy()
2003-07-26 1.15: require Math::String::Charset::Wordlist vs. use
                 added lib => 'GMP'
                 removed shebang line

2004-11-20 1.16

############################################################################## Math::String::Charset::Grouped:
2000-09-20 0.01: first version from Charset 2000-10-25 0.02: fixed bugs, added sep char support 2003-02-06 0.03: added __END__ marker for faster loading 2003-04-14 0.04: fix for scale not beeing a legal parameter to new() 2003-07-26 0.05: added lib => 'GMP'

removed shebang line
2004-11-20 0.06: fix dump() for GROUPED charsets

remove GMP lib (let caller decide)

############################################################################## Math::String::Charset::Nested:
2000-09-15 0.01: split from Charset

                 fixed: bi-gram chars w/o followers can't be in _start
                 class() was wrong for bi-grams (with some start sets)

2003-02-06 0.02: added __END__ marker for faster loading 2003-04-14 0.03: fix for scale not beeing a legal parameter to new() 2003-07-26 0.04: added lib => 'GMP'

removed shebang line
2004-11-20 0.05: remove GMP lib (let caller decide)

############################################################################## Math::String::Charset::Wordlist was moved into it's own distribution

############################################################################## Math::String::Sequence:

2001-03-20 1.00 first version, complete with test and doc 2001-03-24 1.01 support for reversed sequences 2001-04-21 1.02 added: as_array for 'a'..'z' emulation 2003-02-06 1.03 added __END__ marker for faster loading

fixed a potential problem in as_array() 2003-07-26 1.04 added lib => 'GMP'

removed shebang line
2004-11-20 0.05: remove GMP lib (let caller decide) 2005-01-01 0.06: remove a couple of needless return statements