[META-SIG] Proposal for new SIG: Thread SIG

Guido van Rossum guido@CNRI.Reston.Va.US
Sun, 20 Jul 1997 10:33:17 -0400


[Repost with typo fixed in subject -- please ignore the previous one!]

In response to thread discussion on c.l.p, there were some voices to
create a Special Interest Group on Threading.  I volunteered to write
a draft SIG manifesto for it, and Greg Stein has volunteered to become
the SIG champion.  (Now that he's dropping the db-sig; has anybody
volunteered to keep it alive?  If not, I propose to shut it down,
keeping the archives of course).

If there's no discussion based on this proposal, I take it that
there's no need for a Thread-SIG -- so please comment!

	--Guido

========================================================================
Subject: Thread-SIG -- Mission Statement (DRAFT)

The Thread SIG strives to improve the status of threading in Python.
It has specific goals and deliverables.  The SIG will be shut down
(after discussion) when these have been reached and produced,
respectively.

The (lofty) SIG goals are:

  - The Python threading interface should be sufficiently powerful that
  its users can concentrate on using threads rather than writing
  threading tools.

  - There should be sufficient documentation for the Python threading
  interface.

  - Python should support threading well on every platform where the
  native OS has decent threading support; if possible, this support
  should be automatic (e.g. automatically detected by the configure
  script rather than specified as a command line option to it).  In
  particular, good thread support should exist on Windows 95 and NT,
  and on all Unix systems for which a vendor-supported pthread
  implementation exists.

  - There should be some kind of answer to the problems caused by
  Python's central interpreter lock -- if not permanent removal of the
  lock (which seems problematic without significant performance loss),
  then at least some other way that makes it possible to run multiple
  threads comfortably on a single-processor machine -- perhaps BEGIN/END
  thread macros everwhere, perhaps a compile time switch to enable
  something like Greg Stein's "free threading" patches, perhaps
  something else.

  - Some kind of threading that's suitable for multiprocessor
  machines???

The SIG deliverables will be determined by the SIG.  They will include
at least:

  - A "Threading in Python" document that describes HOWTOs, gotchas,
  available packages/patches, etc.  This would address the continual
  "how do I use threads in Python?" questions.

  - A design for higher level threading functionality to be added to
  standard Python (perhaps an extended thread module, perhaps some
  additional Python modules, perhaps a new "pthread" module more closely
  modelled after Posix threads, perhaps all three).

  - A documented implementation of the above design.

  - Patches to standard Python that reduce the problems with the
  interpreter lock, perhaps modelled after Greg Stein's patches.

While the thread-sig exists, other thread related discussions are
welcome, however these should not be confused with the SIG's goals.
========================================================================


--Guido van Rossum (home page: http://www.python.org/~guido/)


_______________
META-SIG  - SIG on Python.Org SIGs and Mailing Lists

send messages to: meta-sig@python.org
administrivia to: meta-sig-request@python.org
_______________