[Python-ideas] Python 3000 TIOBE -3%

Sturla Molden sturla at molden.no
Thu Feb 9 19:44:41 CET 2012

On 09.02.2012 19:25, Massimo Di Pierro wrote:

> As masklinn says, the difference between garbage collection and
> reference counting is more than an implementation issue.

Actually it is not.

The GIL is a problem for those who want to use threading.Thread and 
plain Python code for parallel processing. Those who think in those 
terms have typically prior experience with Java or .NET.

Processes are excellent for concurrency, cf. multiprocessing, os.fork 
and MPI. They actually are more efficient than threads (due to avoidance 
of false sharing cache lines) and safer (deadlock and livelocks are more 
difficult to produce). And I assume students who learn to use such tools 
from the start are not annoyed by the GIL.

The GIL annoys those who have learned to expect threading.Thread for CPU 
bound concurrency in advance -- which typically means prior experience 
with Java. Python threads are fine for their intended use -- e.g. I/O 
and background tasks in a GUI.


More information about the Python-ideas mailing list