· 1992
Semantics of Programming Languages exposes the basic motivations and philosophy underlying the applications of semantic techniques in computer science. It introduces the mathematical theory of programming languages with an emphasis on higher-order functions and type systems. Designed as a text for upper-level and graduate-level students, the mathematically sophisticated approach will also prove useful to professionals who want an easily referenced description of fundamental results and calculi. Basic connections between computational behavior, denotational semantics, and the equational logic of functional programs are thoroughly and rigorously developed. Topics covered include models of types, operational semantics, category theory, domain theory, fixed point (denotational). semantics, full abstraction and other semantic correspondence criteria, types and evaluation, type checking and inference, parametric polymorphism, and subtyping. All topics are treated clearly and in depth, with complete proofs for the major results and numerous exercises.
No image available
All of these exercise assume the definitions and results in the paper Semantic Domains by Carl A. Gunter and D.S. Scott. Many exercises require some basic knowledge of category theory; the necessary definitions can all be found in subsections 1-5 of Chapter 0 of the book of J. Lambek and P.J. Sott or any book on category theory. The exercises below cover a wide range of levels of difficulty. In an effort to provide some guide to these levels, we have placed a single star * next to those exercise which we feel are more difficult than the average. An exercise is marked with two stars ** if it requires some specialized knowledge not included or require by the two references mentioned above (such as lambda-calculus, combinatory logic, set theory, topology, categorical logic, etc.). (KR).
No image available
No image available
No image available
No image available
No image available
No image available
No image available
· 1991
Abstract: "This report characterizes the powerdomain constructions which have been used in the semantics of programming languages in terms of formulas of first order logic under a preordering of provable implication. This provides an intuitive representation which suggests a new form of powerdomain -- called the mixed powerdomain -- which express data in a different way from the well-known constructions from programming semantics. It can be shown that the mixed powerdomain has many of the properties associated with the convex powerdomain such as the possibility of solving recursive equations and a simple algebraic characterization."