[Python-Dev] Google Summer of Code proposal: improvement of long int and adding new types/modules.
Mateusz Rukowicz
mateusz.rukowicz at vp.pl
Fri Apr 21 18:35:26 CEST 2006
Alex Martelli wrote:
>
> On Apr 21, 2006, at 7:46 AM, Aahz wrote:
>
>> On Fri, Apr 21, 2006, Mateusz Rukowicz wrote:
>>
>>>
>>> Next thing I would add is multi precision floating point type to
>>> the core and fraction type, which in some cases highly improves
>>> operations, which would have to be done using floating point instead.
>>> Of course, math module will need update to support multi precision
>>> floating points, and with that, one could compute asin or any other
>>> function provided with math with precision limited by memory and
>>> time. It would be also good idea to add function which computes pi
>>> and exp with unlimited precision. And last thing - It would be nice
>>> to add some number-theory functions to math module (or new one), like
>>> prime-tests, factorizations etc.
>>
>>
>> To echo and amplify what Guido said: an excellent project would be to
>> rewrite the decimal module in C. Another option would be to pick up
>> and
>> enhance either of the GMP wrappers:
>>
>> http://gmpy.sourceforge.net/
>> http://www.egenix.com/files/python/mxNumber.html
>>
>> That would also deal with your suggestion of rational numbers.
>
>
> GMP is covered by LGPL, so must any such derivative work (presumably
> ruling it out for embedding in Python's core itself). That being
> said, as gmpy's author, I'd be enthusiastically happy to mentor
> anybody who wants to work on gmpy or other multiprecision arithmetic
> extension for Python.
>
Rewriting decimal module in C is not far from my initial idea, and I am
quite happy about that, you think it's good idea.
If I was doing it, I would write all needed things myself - I am quite
experienced in coding multi precision computation algorithms (and all
kind of algorithms at all).
>Working with long ints would also be excellent, but I'd hesitate to
>tackle that unless Tim Peters volunteers to help (because there may be
>special implementation constraints).
I am quite confident, that I would be able to make those changes
transparently, that is - representation of long int wouldn't change. And
as far as I saw in the code it's quite straightforward (actually, it
would be strange otherwise). But of course it's up to you. Anyway, I
hope it will be possible to add those changes.
I guess that's quite enough for SoC project, but I hope, it will be
possible to add some of my initial ideas anyway.
Best regards,
Mateusz Rukowicz.
More information about the Python-Dev
mailing list