
"Chad Nelson" <chad.thecomfychair@gmail.com> wrote in message news:4BC642FF.4040803@gmail.com...
OTOH, it would be great if you could separate the core 'big int'/math logic from the storage/allocation logic, for example have: - a base 'math handling' class with functions that all take the actual location and size of the number as parameters - a wrapping template class(es) that can be configured with policies whether to use/work with fixed sized buffers/numbers (thus no memory allocation, thus no exception handling code, thus maximally lean code) or dynamically sized buffers (with or without SBOs, deep or shallow copies, reference counting etc etc...)...
Unifying everything like that could be interesting, in both the "fascinating" and "difficult" meanings of the word. I've put it on my to-do list, I'll see if I can find a way to do it.
I'm sure boost.devel and comp.lang.c++ would provide a helping hand for most implementation problems ;) In any way, going with the separation of the 'core' and 'storage' logic right from the start would be a good idea IMO, even if you provide only one storage logic/policy in the first run...it will help/force you into a better design (that decouples orthogonal problem domains) and enables easier extensibility and configurability later...;) -- "What Huxley teaches is that in the age of advanced technology, spiritual devastation is more likely to come from an enemy with a smiling face than from one whose countenance exudes suspicion and hate." Neil Postman