Next: Key Advances Up: final Previous: final

Background/Context

Semantics aims to answer in mathematical terms questions like ``what is a program?''.

Operational semantics does it by defining a program via a series of rewriting rules.

Denotational semantics does it by defining a program as a function in some topological space.

Game semantics does it by defining a program as a strategy that an ideal player has for playing against an ideal opponent in a game where players either ask questions or answer the other player questions,

The game interpretation tries to overcome the solipsism of the operational interpretation because the next step in the strategy is dictated by something external to the program (the opponent i.e., the enviroment) in contrast to the operational semantics where the interpretation works by reiterating the rules without any external intervention.

Also the game interpretation tries to overcome the extensionality of denotational semantics because the opponent interventions represent intermediate steps of the evaluation process and hence more than just the input-output behaviour goes inside the interpretation.

Game semantics has been succesfully used in the full-abstraction problem for many languages, i.e., the problem of defining a syntax independent model of the language where all ``finite'' elements represent a program.

The project aimed to explore the potential of game semantics in the field of programming lanuages with a particular focus on issues involving modularity, optimisation and efficiency of programs


Next: Key Advances Up: final Previous: final
Pasquale Malacaria
2001-04-24