Andrew D. Gordon and Andrew M. Pitts

Publications of the Newton Institute,

Cambridge University Press,

390+viii pages. ISBN 0 521 63168 8.

**Published January 1998**

Most object-oriented or functional languages are higher order languages, i.e., ones in which the means of manipulation, e.g., object or function, can itself be manipulated. This book contains a collection of original articles about recent developments in operational semantics for higher order programming languages by some of the leading researchers in the field. Operational techniques are important because they are closer to implementations and language definitions than more abstract mathematical techniques such as denotational semantics. One of the exciting developments reflected by the book is that mathematical structures and techniques used in denotational semantics (such as fixpoint induction) may be recovered from a purely operational starting point. The book surveys and introduces techniques such as contextual equivalence, applicative bisimulation, logical relations, improvement relations, explicit models of memory management, and labeling techniques for confluence properties. It treats a variety of higher order languages, based on functions, processes and objects, with and without side effects, typed and untyped.

The idea for the book arose at the workshop on *Higher Order Operational
Techniques in Semantics* (*HOOTS*) that took place in October 1995.
The workshop was organised by the editors of this volume as part of a
six-month programme on *Semantics of Computation* at the Isaac Newton Institute for Mathematical
Sciences, Cambridge UK, with financial assistance from the EPSRC and Harlequin Ltd.