BigMath-20080428-1
Since I probably won't have anything substantial to add before I leave for Alaska, I figured I'd do a BigMath release now. I've added nth root support (which puts me one step closer to fast factorial support), string-to-bignum support, and a half-completed calculator GUI. Screenshot goodness:

Also, I'm wondering what I should add after all of this is done. Floating point? Fractions? Fractions sound cool. Or rather, easy.
I got carried away when I was thinking about this stuff, and started imagining re-writing the whole thing in Objective-C and adding some Transport mechanism, such that the memory allocated to hold a number could exist on multiple machines. After putting some thought into how I could go about supporting arbitrarily large numbers (ie, don't limit the size of a number to the system's word length (in terms of bytes, or whatever)), and then after a while I realized that for anything but the simplest of operations, current limitations pertain to processing power, not memory storage. To be useful, I'd need to parallelize the algorithms, and then maybe it might be relevant to abstract where the memory storage exists.
The only useful idea I took away from that drawn out conversion with myself was the notion of splitting up the memory into which a number is stored into multiple memory allocations - instead of requiring the OS to allocate a contiguous block of memory (which might not be possible). Assuming multi-hundred-megabyte numbers, it could actually be useful to allocate multiple one-hundred-megabyte chunks of memory, and then update the means of accessing a part of the number to account for the dis-contiguous nature of the memory allocation.
We'll see.