Re: python decimals

2009-09-16 Thread Mark Dickinson
On Sep 16, 1:35 am, Andrew Svetlov andrew.svet...@gmail.com wrote:
 It only reflects the fact what comp.lang.python replicated by several
 web sites.
 Unfortunately looks like there are no link to library implements that :
 (

A few random thoughts:

If you just want fixed-precision decimal, there may be simpler
solutions
than using the decimal module.  Contrary to popular belief, the
decimal
module (and decNumber) provides floating-point decimal arithmetic, not
fixed-point (though its treatment of exponents means that it can
emulate
fixed-point arithmetic well).

Can you use the ctypes module to wrap the decnumber library?  That
might be faster than writing a full-fledged extension module.  Cython
might be useful, too.

If you do create your own Python bindings for decnumber, is there any
chance you'd be allowed make them public (e.g., on PyPI)?  I think
there are many people who would find such bindings useful.

--
Mark
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: python decimals

2009-09-16 Thread Andrew Svetlov
Decimal has good enough API and we need to follow it as lot of our
code already operates with Decimal.
Maybe with different Context and exception types and limited subset of
operations - but switching should be not very hard.
Decimal arithmetic is good for as. We need to support several types
like Currency and standard floating point arithmetic make well known
failures in fraction point for some cases.
Really standard decimal module is exact what we need except
performance.

I'm skeptical about ctypes for this specific case but like to use
Cython.

Of course library will be open source. Perhaps I will start to work on
it about end of next week - it's high priority task for my company.

On Sep 16, 4:49 am, Mark Dickinson dicki...@gmail.com wrote:
 On Sep 16, 1:35 am, Andrew Svetlov andrew.svet...@gmail.com wrote:

  It only reflects the fact what comp.lang.python replicated by several
  web sites.
  Unfortunately looks like there are no link to library implements that :
  (

 A few random thoughts:

 If you just want fixed-precision decimal, there may be simpler
 solutions
 than using the decimal module.  Contrary to popular belief, the
 decimal
 module (and decNumber) provides floating-point decimal arithmetic, not
 fixed-point (though its treatment of exponents means that it can
 emulate
 fixed-point arithmetic well).

 Can you use the ctypes module to wrap the decnumber library?  That
 might be faster than writing a full-fledged extension module.  Cython
 might be useful, too.

 If you do create your own Python bindings for decnumber, is there any
 chance you'd be allowed make them public (e.g., on PyPI)?  I think
 there are many people who would find such bindings useful.

 --
 Mark

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: python decimals

2009-09-15 Thread Mark Dickinson
On Sep 15, 2:27 am, Andrew Svetlov andrew.svet...@gmail.com wrote:
 Is there some kind of python binding for decNumber library?
 Standard decimal.Decimal is good enough, but very slow.
 My current project toughly coupled with 'currency' operations and we
 have performance problems related to decimal calculations.
 From my perspective decNumber is fast and has well wide domain to
 represent and process all required set of numbers - we don't need to
 work with 'almost infinite numbers' as python decimal can.
 I tried to google for desired binding - but found nothing.
 gmpy is interesting project, but supported types is not exactly what
 we need - rationals and big floats is not decimals in fixed point
 notation.
 My team discussed about making own python binding of decNumber - but
 before we start this task I like to ask python community: is there
 existing implementation? I don't want to invent the wheel again.

As far as I know, no such bindings exist.  There have been various
efforts to rewrite the decimal module in C, but (again as far as I
know) none of those efforts have come to fruition yet.

--
Mark
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: python decimals

2009-09-15 Thread Terry Reedy

Mark Dickinson wrote:

On Sep 15, 2:27 am, Andrew Svetlov andrew.svet...@gmail.com wrote:

Is there some kind of python binding for decNumber library?
Standard decimal.Decimal is good enough, but very slow.
My current project toughly coupled with 'currency' operations and we
have performance problems related to decimal calculations.
From my perspective decNumber is fast and has well wide domain to
represent and process all required set of numbers - we don't need to
work with 'almost infinite numbers' as python decimal can.
I tried to google for desired binding - but found nothing.
gmpy is interesting project, but supported types is not exactly what
we need - rationals and big floats is not decimals in fixed point
notation.
My team discussed about making own python binding of decNumber - but
before we start this task I like to ask python community: is there
existing implementation? I don't want to invent the wheel again.


Searching Python decNumber binding puts your query, from various 
sources, in several of the top 10 sports ;-) Did not seen anythng in the 
next 20 either.



As far as I know, no such bindings exist.  There have been various
efforts to rewrite the decimal module in C, but (again as far as I
know) none of those efforts have come to fruition yet.


--
http://mail.python.org/mailman/listinfo/python-list


Re: python decimals

2009-09-15 Thread Andrew Svetlov
It only reflects the fact what comp.lang.python replicated by several
web sites.
Unfortunately looks like there are no link to library implements that :
(

On Sep 15, 5:17 pm, Terry Reedy tjre...@udel.edu wrote:
 Mark Dickinson wrote:
  On Sep 15, 2:27 am, Andrew Svetlov andrew.svet...@gmail.com wrote:
  Is there some kind of python binding for decNumber library?
  Standard decimal.Decimal is good enough, but very slow.
  My current project toughly coupled with 'currency' operations and we
  have performance problems related to decimal calculations.
  From my perspective decNumber is fast and has well wide domain to
  represent and process all required set of numbers - we don't need to
  work with 'almost infinite numbers' as python decimal can.
  I tried to google for desired binding - but found nothing.
  gmpy is interesting project, but supported types is not exactly what
  we need - rationals and big floats is not decimals in fixed point
  notation.
  My team discussed about making own python binding of decNumber - but
  before we start this task I like to ask python community: is there
  existing implementation? I don't want to invent the wheel again.

 Searching Python decNumber binding puts your query, from various
 sources, in several of the top 10 sports ;-) Did not seen anythng in the
 next 20 either.

  As far as I know, no such bindings exist.  There have been various
  efforts to rewrite the decimal module in C, but (again as far as I
  know) none of those efforts have come to fruition yet.

-- 
http://mail.python.org/mailman/listinfo/python-list