School of Computing

Communicating mobile processes: introducing occam-pi

P.H. Welch and F.R.M. Barnes

In A.E. Abdallah, C.B. Jones, and J.W. Sanders, editors, Communicating Sequential Processes: The First 25 Years, volume 3525 of Lecture Notes in Computer Science, pages 175-210. Springer Berlin Heidelberg, April 2005 [doi].

Abstract

This paper introduces occam-pi, an efficient and safe binding of key elements from Hoare's CSP and Milner's pi-calculus into a programming language of industrial strength. A brief overview of classical occam is presented, before focussing on the extensions providing data, channel and process mobility. Some implementation details are given, along with current benchmark results. Application techniques exploiting mobile processes for the direct modelling of large-scale natural systems are outlined, including the modelling of locality (so that free-ranging processes can locate each other). Run-time overheads are sufficiently low so that systems comprising millions of dynamically assembling and communicating processes are practical on modest processor resources. The ideas and technology will scale further to address larger systems of arbitrary complexity, distributed over multiple processors with no semantic discontinuity. Semantic design, comprehension and analysis are made possible through a natural structuring of systems into multiple levels of network and the compositionality of the underlying algebra.

Download publication 504 kbytes (PDF)

Bibtex Record

@inproceedings{2162,
author = {P.H. Welch and F.R.M. Barnes},
title = {Communicating Mobile Processes: introducing occam-pi},
month = {April},
year = {2005},
pages = {175-210},
keywords = {determinacy analysis, Craig interpolants},
note = {},
doi = {10.1007/11423348_10},
url = {http://www.cs.kent.ac.uk/pubs/2005/2162},
    publication_type = {inproceedings},
    submission_id = {5290_1116036322},
    editor = {A.E. Abdallah and C.B. Jones and J.W. Sanders},
    volume = {3525},
    series = {Lecture Notes in Computer Science},
    refereed = {yes},
    booktitle = {Communicating Sequential Processes: The First 25 Years},
    publisher = {Springer Berlin Heidelberg},
    ISBN = {978-3-540-25813-1},
}

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

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

Last Updated: 21/03/2014