[Python-3000] the future of the GIL
Greg Ewing
greg.ewing at canterbury.ac.nz
Thu May 10 05:27:34 CEST 2007
Talin wrote:
> Thought experiment: Suppose you were writing and brand-new dynamic
> language today, designed to work efficiently on multi-processor systems.
> Forget all of Python's legacy implementation details such as GILs and
> refcounts and such. What would it look like, and how well would it
> perform? (And I don't mean purely functional languages a la Erlang.)
Although I wouldn't make it purely functional, I think
I'd take some ideas from things like Erlang and Occam.
In particular, I'd keep the processes/threads/whatever
as separated as possible, communicating only via well-
defined channels having copy semantics for mutable objects.
Anything directly shared between processes (code objects,
classes, etc.) would be read-only, and probably exempt
from refcounting to enable access without locking.
Hmmm... guess I'll have to go away and design PyLang
now. :-)
--
Greg Ewing, Computer Science Dept, +--------------------------------------+
University of Canterbury, | Carpe post meridiem! |
Christchurch, New Zealand | (I'm not a morning person.) |
greg.ewing at canterbury.ac.nz +--------------------------------------+
More information about the Python-3000
mailing list