Semantic Models for Programming Languages (Com S 641)
This page gives access to information about the course offerings of ``Semantics
of Programming Languages'' as taught by Gary
T. Leavens for the
Department
of Computer Science at
Iowa State
University.
This course has had many offerings, which differ in the material covered
each year. The following describes the various offerings.

Fall 1990

We used notes from Carl Gunter that later became his
book Semantics of Programming Languages
and also studied type theory.

Fall 1992
 We used Friedman, Wand, and Haynes's
(then new) book Essentials of Programming Languages (MIT
Press, 1992), and also studied type theory and lambda Prolog.

Fall 1994

We used a monograph by Wim H. Hesselink,
Programs, Recursion, and Unbounded Choice
(Cambridge, 1992) to study axiomatic (or predicate transformer) semantics.

Fall 1996

We used David Schmidt's book
The Structure of Typed Programming Languages (MIT Press, 1994);
and studied the design of languages and type systems
for them, using denotational semantics to help validate
the soundness of the type systems.

Fall 2000

We used Abadi and Cardelli's
A Theory of Objects (SpringerVerlag, 1996)
to study operational semantics
and type theory for objectoriented programming.

Spring 2002

We used Back and von Wright's
Refinement Calculus: A Systematic Introduction
(SpringerVerlag, 1998)
to study axiomatic (i.e., predicate transformer) semantics and laws of
programming.

Spring 2004

The course was taught by Markus Lumpe,
who used several books on picalculus,
including Robin Milner's Communicating and Mobile Systems: The piCalculus
and Davide Sangiorgi and David Walker's The picalculus: a Theory of Mobile Processes.

Spring 2006

We will use Flemming Nielson, Hanne Riis Nielson, and Chris Hankin's
book Principles of Program Analysis (SpringerVerlag,
1999) to study program analysis, including data flow analysis,
constraintbased analysis, abstract interpretation, and type and
effect systems. This book emphasizes the commonality between the
different kinds of analysis.
Last update $Date: 2007/08/10 23:10:51 $
Gary T. Leavens
229 Atanasoff Hall
Department of Computer Science, Iowa State University
Ames, Iowa 500111040 USA