School of Computing

Integrating and Extending JCSP

P.H. Welch, N.C.C. Brown, J. Moores, K. Chalmers, and B. Sputh

In Steve Schneider, Alistair A. McEwan, Wilson Ifill, and Peter H. Welch, editors, Communicating Process Architectures 2007, volume 65 of Concurrent Systems Engineering, pages 182-196, Amsterdam, The Netherlands, July 2007. WoTUG, IOS.


This paper presents the extended and re-integrated JCSP library of CSP packages for Java. It integrates the differing advances made by Quickstones JCSP Network Edition and the core library maintained at Kent. A more secure API for connecting networks and manipulating channels is provided, requiring significant internal re-structuring. This mirrors developments in the occam-pi language for mandated direction specifiers on channel-ends. For JCSP, promoting the concept of channel-ends to first-class entities has both semantic benefit (the same as for occampi) and increased safety. Major extensions include alting barriers (classes supporting external choice over multiple multi-way synchronisations), channel output guards (straightforward once we have the alting barriers), channel poisoning (for the safe and simple termination of networks or sub-networks) and extended rendezvous on channel communications (that simplify the capture of several useful synchronisation design patterns). Almost all CSP systems can now be directly captured with the new JCSP. The new library is available under the LGPL open source license.

Download publication 95 kbytes (PDF)

Bibtex Record

author = {P.H. Welch and N.C.C. Brown and J. Moores and K. Chalmers and B. Sputh},
title = {Integrating and {E}xtending {JCSP}},
month = {July},
year = {2007},
pages = {182-196},
keywords = {determinacy analysis, Craig interpolants},
note = {},
doi = {},
url = {},
    publication_type = {inproceedings},
    submission_id = {13954_1220623750},
    ISBN = {978-1586037673},
    booktitle = {Communicating Process Architectures 2007},
    editor = {Steve Schneider and Alistair A. McEwan and Wilson Ifill and Peter H. Welch},
    volume = {65},
    series = {Concurrent Systems Engineering},
    address = {Amsterdam, The Netherlands},
    organization = {WoTUG},
    publisher = {IOS},
    ISSN = {1383-7575},
    refereed = {Yes},

School of Computing, University of Kent, Canterbury, Kent, CT2 7NF

Enquiries: +44 (0)1227 824180 or contact us.

Last Updated: 21/03/2014