I've thrown in my bignumber stuff, it's in types/bignum*, along with a couple of perl files I've been using to test them against a set of regression tests that IBM have made available.
It is far from finished, and needs support for bigints added in, I plan to do this by using a negative precision or NULL context, but I've not quite decided which yet. And I need to work out quite where this library meets parrot, I expect that the interpreter will need a default context hanging off it somewhere, and we'll want STRING* versions of the string functions. I think these ought to go in a seperate file, as those in the library are useful for being compliant, while the ones we want will be useful for doing the right thing when we're not being compliant. This isn't identical to previously suggested implementations, and many of the internal functions can be re-done more efficiently than I want to work out how right now. But that's ok, because there are tests, so we can easily tell if a better set of guts is still correct. Anyhow, that's quite enough for now, Alex Gough -- Every reader should ask himself periodically "Toward what end, toward what end?" -- but do not ask it too often lest you pass up the fun .... for the constipation of bittersweet philosophy.