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 (Springer-Verlag, 1996)
to study operational semantics
and type theory for object-oriented programming.
-
Spring 2002
-
We used Back and von Wright's
Refinement Calculus: A Systematic Introduction
(Springer-Verlag, 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 pi-calculus,
including Robin Milner's Communicating and Mobile Systems: The pi-Calculus
and Davide Sangiorgi and David Walker's The pi-calculus: a Theory of Mobile Processes.
-
Spring 2006
-
We will use Flemming Nielson, Hanne Riis Nielson, and Chris Hankin's
book Principles of Program Analysis (Springer-Verlag,
1999) to study program analysis, including data flow analysis,
constraint-based 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 50011-1040 USA