[Python-Dev] Pythonic concurrency

Bill Janssen janssen at parc.com
Thu Sep 29 18:56:17 CEST 2005


> 1) It works by default, so that novices can use it without falling
> into the deep well of threading. That is, a program that you write
> using threading is broken by default, and the tool you have to fix it
> is "inspection." I want something that allows me to say "this is a
> task. Go." and have it work without the python programmer having to
> study and understand several tomes on the subject.

Bruce, this seems to me like wishful thinking.  Either the separate
threads don't interact, in which case you are running separate
programs, in which case os.system() already works well enough, or they
do, in which case you have the various deadlock and livelock problems
of threading.

And this nonsense about threaded programs being "broken by default" --
might as well say the same about programs that use variables.  If you
don't know how to use threads, great, just don't use them.  Spend the
time reading Fred Brooks' NO SILVER BULLET, instead.  It's available
in essay form at
http://www-inst.eecs.berkeley.edu/~maratb/readings/NoSilverBullet.html.

> One thing that occurs to me is that a number of items on this wish
> list may conflict with each other, which may require a different way
> of thinking about the problem.

That seems correct to me.

Bill


More information about the Python-Dev mailing list