WoTUG - The place for concurrent processes

Paper Details


%T CSP as a Domain\-Specific Language Embedded in Python and Jython
%A Sarah Mount, Mohammad Hammoudeh, Sam Wilson, Robert Newman
%E Peter H. Welch, Herman Roebbers, Jan F. Broenink, Frederick R. M. Barnes, Carl G. Ritson, Adam T. Sampson, G. S. Stiles, Brian Vinter
%B Communicating Process Architectures 2009
%X Recently, much discussion has taken place within the
   Python programming community on how best to support
   concurrent programming. This paper describes a new Python
   library, python\-csp, which implements synchronous,
   message\-passing concurrency based on
   Hoare\[rs]s Communicating Sequential Processes. Although
   other CSP libraries have been written for Python,
   python\-csp has a number of novel features. The library is
   implemented both as an object hierarchy and as
   a domain\-specific language, meaning that programmers can
   compose processes and guards using infix operators, similar
   to the original CSP syntax. The language design is intended
   to be idiomatic Python and is therefore quite different to
   other CSP libraries. python\-csp targets the CPython
   interpreter and has variants which reify CSP process as
   Python threads and operating system processes. An equivalent
   library targets the Jython interpreter, where CSP
   processes are reified as Java threads. jython\-csp also has
   Java wrappers which allow the library to be used from pure
   Java programs. We describe these aspects of python\-csp,
   together with performance benchmarks and a formal analysis
   of channel synchronisation and choice, using the model
   checker SPIN.


If you have any comments on this database, including inaccuracies, requests to remove or add information, or suggestions for improvement, the WoTUG web team are happy to hear of them. We will do our best to resolve problems to everyone's satisfaction.

Copyright for the papers presented in this database normally resides with the authors; please contact them directly for more information. Addresses are normally presented in the full paper.

Pages © WoTUG, or the indicated author. All Rights Reserved.
Comments on these web pages should be addressed to: www at wotug.org

Valid HTML 4.01!