Review of proof, language, and interaction: essays in honour of Robin Milner edited by Plotkin, Stirling and Tofte

  • Authors:
  • Riccardo Pucella

  • Affiliations:
  • Cornell University

  • Venue:
  • ACM SIGACT News
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

The field of theoretical computer science has had a long tradition of providing wonderful edited books to honor various prominent members of the community. The idea behind such edited works is clear: celebrate the work of a particular researcher by having co-authors and colleagues write papers on subjects related to the researcher's body of work. When successful, such a project provides for a wonderful excursion through the work of a researcher, often highlighting an underlying coherence to that work.On that account, the book Proof, Language, and Interaction: Essays in the Honor of Robin Milner (edited by Plotkin, Stirling and Tofte) is a success. In no small part this is due to Milner's span of work from theory to practice. It is hard to both briefly describe Milner's contributions and give an idea of the breadth of his effort. Two major tracks of research emerge. First, after some work with John McCarthy's AI group at Stanford, he developed LCF (specifically, Edinburgh LCF), a system for computer-assisted theorem proving based on Dana Scott's idea on continuous partial functions for denotational semantics. Not only working on the implementation, Milner also worried about the semantic foundations [1]. LCF came with a programming language, Edinburgh ML, which evolved with Milner's help into standard ML, a higher-order language that introduced many features now standard in advanced programming language, features such as polymorphism and type inference [4]. His second track of research involves concurrency. He invented CCS, the calculus of communicating systems [2]. Work on the semantics of CCS went from the traditional domain-theoretic approach to a new operational view of processes equality based on the notion of bisimulation. Subsequent work by Milner led to the development of other calculi, most notably the π-calculus, which included a powerful notion of mobility [3]. His later work in the area attempted to provide a unifying framework for comparing calculi, and unifying sequential and concurent computation.This range of interests is reflected in the table of contents of the book. The book splits across different subjects: semantic foundations, where we discover work aimed at understanding computation, both sequential and concurrent, programming logic, where we discover work derived from Milner's work on LCF, and aimed at understanding the role of formal mathematics, programming languages, where we discover Standard ML, and other languages based on Milner's idea about concurrent calculi, concurrency, where we discover work on Milner's early CCS approach and extensions, and mobility, where we discover work related to the π-calculus.