Formal Semantics of Programming Languages

Instructor:Mooly Sagiv
Assistant:Eran Yahav

Prerequisite Compilers
Thursday 15-18
Scriber 06

While the syntax of a programming language is always formally specified, the equally important aspect of defining its meaning is often left to natural language which is ambiguous and leaves questions open. In order to understand the inherent properties of a language (e.g. for constructing a compiler), we should have a deeper understanding. The goal of formal semantics is to reveal the essence of a language beneath its syntactic surface.

This is the first time that this course is provided. In the first part of the course we will descibe the basic techniques used for defining semantics. In the second part of the course we plan to cover semantics issues in the semantics of realistic languages like Java and C#.
 

Important Message

If your POWER POINT does not show certain  mathematical characters use
fonts in a zip file, by clicking here. Make sure to extract
them to the appropriate directory, that is :

- C:\windows\Fonts - If you're on Win 9x
- C:\Winnt\fonts - If you're on NT

Alternatively, you can extract them anywhere, and install them via the control panel

Course Requirements


Bibliography



Course Schedule

  1. February 20, Overview

  2. Class notes by Gilad Arnold
  3. February 27, Introduction to Operational Semantics

  4. Class notes by Ronny Morad
  5. March 6, No class
  6. March 13, Inductive Definitions

  7. Class notes by Vanya Rrubin
  8. March 20,  Denotational Semantics (Part I)

  9. Class notes by Shay Cohen
  10. March 27,  Denotational Semantics (Part II)

  11. Class notes by Daniel Urieli   rtf
  12. April 4, Denotational Semantics (Part III)

  13. Class notes by Ohad Brzilay
  14. April 10,Axiomatic Semantics

  15. Class notes by Danny Nebenzahl
  16. May 8,Nondeterminism and Parallelism 
           Class notes by Dana Fisman
  17. May 15, Java Concurrency a gentle introduction

Homework Assignments

    Assignment 1: Due  February 27, Read chapter 1 and solve Execrsises 1.3,1.4,1.6
    Assignment 2: Due March 13
     Partial Solution
    Assignment #3, Due: 10/4/03
    Assignment 4, Due 1/5/03


For further information Email: sagiv@math.tau.ac.il