given the bignum library which supports unlimited integers, how about a "float" type that supports precise calculations?
it could be as simple as taking a bignum and adding an exponent to it.
ie: 3.141593 store as 3141593 with exponent 6.
the necessary conversions to allow calculations could then be handled in pike internally instead of burdening the user if he/she needs to avoid the usual floating point problems.
greetings, martin.