[pypy-dev] GIL removal in PyPy (was: Re: Threaded interpretation)

Carl Friedrich Bolz cfbolz at gmx.de
Sat Jan 3 13:23:03 CET 2009


Hi Leonardo,

Leonardo Santagada wrote:
> On Jan 3, 2009, at 4:18 AM, Paolo Giarrusso wrote:
> 
>> There was, luckily, somebody on the mailing list who said "maybe we
>> should drop refcounting", but people didn't listen for some reason.
> 
> 
> You repeated this meme many times in your emails, so I thought that  
> maybe you really didn't see the full picture. This is what I  
> understand from the reasoning behind it.
> 
> Dropping refcounting and move to free threading would completely break  
> all C modules so they would have to be rewritten and would make the  
> CPython API much more complex and integration with C libraries hard.  
> That's why no one took it seriously. Think like this, breaking all c  
> modules would make CPython as usable as haskell :), or just look at  
> the number of libraries not available right now for Python 3.0.
> 
> It is not some retarded choice made by GvR, but a pragmatic one.  
> Python as a language used by millions of people can't completely  
> change semantics from version to version.

While I understand the reasoning above, I don't agree with the last
paragraph. Switching to a different GC doesn't lead to that huge a
change in semantics. There are subtle difference about finalizers (see
the blog posts about that:

http://morepypy.blogspot.com/2008/02/python-finalizers-semantics-part-1.html
http://morepypy.blogspot.com/2008/02/python-finalizers-semantics-part-2.html

It definitely leads to a different C API, of course. Thus your above
points remain valid.

Cheers,

Carl Friedrich



More information about the Pypy-dev mailing list