No complex rationals in Python 3.0

Rock rocco.rossi at
Mon Nov 24 20:51:39 CET 2008

On 24 Nov, 20:31, Christian Heimes <li... at> wrote:
> Rock wrote:
> > I appreciate the inclusion of the fractions module in Python 2.6 and
> > therefore in Python 3.0. But I feel there's something missing: no
> > possibility for complex rationals (or arbitrary precision) integers. I
> > was just checking the complex number support in Python, compared, for
> > instance, to Common Lisp and Scheme, and I realized that there was
> > this subtle omission. The inclusion of rationals and arbitrary
> > integers is cool, but the numeric tower (say, compared to Scheme) is
> > not complete. I don't think there would be a performance hit if
> > complex rationals were provided. Ordinary operations on complex
> > floats, in theory, should not be affected and handled separately. But
> > it would be nice to be able to do:
> > (3/4 + 1/2j) * (1/4 - j) = 11/16 - 5/8j
> > with no loss of precision.
> > Python is heavily used in math and science all over the world. We've
> > even got a recent symbolic math project (sympy) that looks very
> > promising, so I guess this could be an important issue.
> Nobody has submitted a PEP and patch to implement the feature in time.
> There is still Python 3.1, you know? If you like to contribute the
> feature then please start a discussion on the Python Ideas mailing list
> (not the developer lists!).
> > Note: there exists a library that implements what I'm talking about:
> >
> > but still I personally would have liked to see this stuff included
> > natively in the new Python 3.0.
> The code depends on the CLN library which isn't suited for the Python
> core. It's written in C++ and it's licensed under GPL. Neither GPL nor
> LGPL software can't be integrated into the core. We also require all
> code to be compatible with C89.
> Christian

Thanks Christian, will do so as soon as possible.


More information about the Python-list mailing list