The point about bignums is that you don't have to check for them overflowing, because they don't. Something more dreadful happens first. That's why 64bit or 1kbit bignums are no good. If you want 64 bit numbers or so, I suggest you use floating point. In fact, a CL-subset with only floating point might be useful, especially if exact-integer floats were printed like integers.