This is the introductory paper by R. Milner on pi-calculus: http://www.lfcs.inf.ed.ac.uk/reports/89/ECS-LFCS-89-85
The page has also a link to the companion paper which goes deeper into theory.
-- ZeljkoVrba
I was hoping to find a nice, easy intro to this here, but alas not. All I've got so far is this:
http://www-ics.ee.ic.ac.uk/~frank/surp98/report/gdj1/pi-calculus.html
and a pdf of a paper on the Polyadic Pi calculus, but it looks a bit heavy going...
-- DannyAyers
I highly recommend RobinMilner's book, "Communicating and Mobile Systems: the Pi-Calculus", ISBN 0521658691 .
-- DaveHerman
Thanks - it's certainly well written, though the maths is pretty hard. I just came across this page again while searching for a link for the book as the joint-scariest on my bookshelf, alongside DougLea's "Concurrent Programming in Java"
-- DannyAyers
Wikipedia entry: http://en.wikipedia.org/wiki/Pi-calculus
Comparable to the LambdaCalculus but where that is based on Functions, PiCalculus is based on Processes and arose from modelling Mobile systems. Many strange connectives, example:
/\/-> (like a crooked arrow)
It can be used to specify languages similar to how LambdaCalculus is used in DenotationalSemantics - example with PrologLanguage:
http://scholar.google.com/scholar?cluster=6035347962773538537
A DenotationalSemantics of PiCalculus itself is given in http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.23.1179.
A programming language based on it is PictLanguage.
An example of the DiningPhilosophers Problem in Nomadic Pict: http://www.cs.put.poznan.pl/pawelw/npict/Philosophers/hall.pi
See also: JoinCalculus, ModelsOfComputation.