Programming Language Foundations
course the main subject of study are programming languages.
The course introduces advanced techniques to describe and analyze formal program semantics. Among
the topics covered are: grammars and syntax, Post systems, static semantics,
type inference, lambda calculus, combinatory calculus, term rewriting, denotational semantics, axiomatic semantics,
and logic programming in Prolog.
The objective of this course is to improve your understanding of the
foundations of programming langugages. More specifically, you will learn functional programming,
type inference and analysis of functional languages, the lambda calculus
foundation of functional languages, translation to combinatory calculus using
term rewriting, denotational semantics of functional and procedural languages,
axiomatic semantics of procedural languages, and logic programming.
Schedule and Notes
To see the
schedule and to browse the lecture notes, click
The grade book is provided by
Robert van Engelen
471 DSL (in CSIT at 4th floor in Dirac)
(850) 645 0309
2:00-2:45pm Tue and Thu
and some familiarity with formal logic is helpful but not required.
The Study of Programming Languages
103 LOV, 9:30 - 10:45 AM Tue and Thu
Roll is not taken, but you are responsible for all material presented in class.
Midterm exam (50%) and final
Exam dates will be scheduled in advance. A grade of zero will be
recorded for missed exams unless prior arrangements have been made.
Exercises from the book will be assigned as homework on a regular basis for extra credit. All assignments should be submitted before midnight on the due date. The assignments will count towards a 10% bonus on the total final grade. Late submissions will not be graded. The homework assignments should be completed individually. Copying another's solution is cheating! See the Honor Code stated in the Student Handbook for more details.
Students are expected to uphold the Honor Code. Consult the Student Handbook
for more details on the Honor Code.
Please advice the instructor of this class at your earliest convenience (minimum of five working days) if you have a disability
that will require a reasonable accomodation for any of the activities in the course schedule.
Please notify the Department of Computer Science five working days prior to the event if a reasonable accomodation for a
disability is needed: 644 2296 (voice), 644 0058 (fax).
This syllabus and other class materials are available in alternative format upon request.
This page has been automatically generated by the
. Copyright Robert van Engelen