[Python-Dev] Re: Decimal type question [Prothon] (original) (raw)
Andrew P. Lentvorski, Jr. bsder at mail.allcaps.org
Mon Aug 9 19:48:44 CEST 2004
- Previous message: [Python-Dev] Re: Decimal type question [Prothon]
- Next message: [Python-Dev] Re: Re: Decimal type question [Prothon]
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Aug 9, 2004, at 10:29 AM, Mark Hahn wrote:
Forgive me if I'm being a pest, but no one has commented on the real reason I asked the question. What does everyone think of the idea of having these three built-in numeric types?
1) An Int implemented with infinite precision integer (Python Longs) with the constant/str form of +-NN such as 0, -123, 173394, etc. 2) A Decimal implemented with the .Net decimal float (or the IBM decimal if the .Net decimal sucks too much) with the constant/str form of +-NN.NN such as 0.0, -123.0, 173394.0, 173394.912786765, etc. 3) A binary Float implemented with the hardware floating point with the constant/str form of +-NN.NN+-eNN such as 0e0, -123e0, 173.39e+3, 2.35e-78, etc.
Be careful defining string representations of numbers. It is a non-trivial problem to adhere to the correct internationalization standards.
Forgive me if I'm being dense, but don't we already have 1 & 3 as built in types?
2 is unlikely to be a builtin until folks get some experience using the Decimal module. Yes, the .Net Decimal sucks.
In addition, the desired evolution of Python seems to be replacing the binary floating point as the default floating point type with the decimal floating point type by default rather than growing another builtin numeric type. This is obviously contingent upon the Decimal module getting some real-life use as well as it getting some speed improvements in the future.
There would be no automatic conversion except the / operator would convert from Int to Decimal
Int goes to the default type of float (which is currently binary FP) already upon using the / operator.
and the Math module would convert Int and Decimal values to Float for almost all functions (except simple ones like abs, min, max).
This is not necessarily a good idea. Exponentials are very useful in financial situations and want to be decimals, not binary floats, in those cases.
-a
- Previous message: [Python-Dev] Re: Decimal type question [Prothon]
- Next message: [Python-Dev] Re: Re: Decimal type question [Prothon]
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]