[Python-Dev] [Python-checkins] r68182 - in python/trunk: Lib/decimal.py Misc/NEWS (original) (raw)
Mark Dickinson dickinsm at gmail.com
Tue Jan 6 11:26:13 CET 2009
- Previous message: [Python-Dev] [Python-checkins] r68182 - in python/trunk: Lib/decimal.py Misc/NEWS
- Next message: [Python-Dev] address manipulation in the standard lib
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Mon, Jan 5, 2009 at 3:12 PM, Jim Jewett <jimjjewett at gmail.com> wrote:
Our of curiousity, why are these constants for internal use only?
I don't think anyone ever thought about deliberately making them public---I suspect they were introduced as a speed optimization.
I can see that having things like NaN = Decimal('NaN') might be handy for some users (though I actually suspect that the intersection between Decimal users and those who care about NaNs is rather small...), but they don't belong in the decimal module, which is supposed to be kept very close to the standard and, exactly as you say, keep the beyond-the-spec API small.
Maybe it's time for the "Add a decimal_utils module" PEP, which could contain such constants? There are many other definitions and conveniences that could go into such a module. One thing in particular that I miss is a sqrt() function (as opposed to Decimal method) that takes a Decimal, int or long and returns a Decimal; similarly for exp, log, log10, ... Another thing that has been requested recently on c.l.p. is good implementations of trig functions for Decimal, which are quite hard to do properly.
Mark
- Previous message: [Python-Dev] [Python-checkins] r68182 - in python/trunk: Lib/decimal.py Misc/NEWS
- Next message: [Python-Dev] address manipulation in the standard lib
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]