Games in the semantics of programming languages
This lecture will give an introduction to game semantics and its applications
to modelling programming languages. Game semantics models types as two-person
games, and programs as strategies for playing such games. The key feature of
this semantic paradigm is that interaction - between the players, who should
be thought of as representing a System and its Environment - is represented
explicitly and intrinsically, at a very basic level.
In 1993, game semantics was used as the basis for the first syntax-independent
constructions of fully abstract models for PCF, thus addressing a long-standing
problem. Since then, there has been an extensive further development and
application of game semantics to capture many of the more subtle features of
programming languages, including local references and non-local control
operators. The combinations of features which can be captured precisely, in the
form of fully abstract models, with these means are now approaching those found
in 'real' programming languages such as Standard ML.
Samson Abramsky