[Python-Dev] calculator module (original) (raw)

Andrew P. Lentvorski, Jr. bsder at allcaps.org
Wed Mar 10 17:15:53 EST 2004


On Wed, 10 Mar 2004, Raymond Hettinger wrote:

To these, the HP12C financial calculator adds: * solve for missing variable in (n i% pv pmt fv) * internal rate of return and net present value for a stream of cash flows ... By "pretty good" implementation, I mean that the implementations should remain as straight-forward as possible and neither promise, nor get in a snit about being accurate to the last place (i.e. a 9 place approximation of gamma would be considered fine).

Pretty good is not "good enough". One of the reasons the HP 12C is so popular is that every 12C gets exactly the same answer for the same inputs regardless of age, model, etc. The Python version would have to be a bit exact match to a 12C for that calculation.

In addition, there are going to be requirements for directed rounding to ensure the stability of some functions over their domains. Directed rounding generally causes a machine wide pipeline drain and lots of ancillary machine wide FP effects. Having Python cause FP random FP bugs in other programs would not be good for its reputation.

Personally, I would rather see extremely good and accurate, but possibly complex versions of these mathematical functions added into Python proper with the calculator module simply being a wrapper around the base library functions. That way, the calculator automatically benefits when the "state of the art" method in the main library advances or is corrected.

-a



More information about the Python-Dev mailing list