Syllabus academic year 2010/2011
(Created 2010-07-25.)
PROGRAMMING LANGUAGE THEORYEDA145
Credits: 7,5. Grading scale: TH. Cycle: A (Second Cycle). Main field: Technology. Language of instruction: The course might be given in English. Optional for: D4, D4pv, E4, E4pv, F4, F4pv, Pi4, Pi4pv. Course coordinator: Lennart Andersson, Lennart.Andersson@cs.lth.se, Dept of Computer Science. Prerequisites: EDA027 Algorithms and Data Structures or EDAA01 Programming - Second Course. FMA410 Calculus in One Variable, FMA420/FMA425 Linear Algebra and FMA430/FMA435 Calculus in Several Variables. The course might be cancelled if the number of applicants is less than 20. Assessment: Written examination. The students are expected to present solutions to selected problems at seminars. Further information: The course is given periodically. It is planned to be given every second year (odd years) during spring term. The course might be cancelled if there are less than 20 participants. Home page: http://cs.lth.se/eda145.

Aim
The course will give a qualified perspective on the semantics of programming languages and ability to read and understand scientific papers in a wider field than the course contents.

Knowledge and understanding
For a passing grade the student must

Skills and abilities
For a passing grade the student must

Judgement and approach
For a passing grade the student must

Contents
Syntax of programming languages and abstract representation of programs. Operational, axiomatic, and denotational semantics. Proofs of program properties. Domain theory and semantics of recursive definitions. Lambda calculus and combinatory logic. Execution models for programming languages. Unification and type deduction.

Literature
Nielson, H R, Nielson, F: Semantics with Applications: An Appetizer. Springer 2007. ISBN 978-1-84628-691-9
Andersson, L: Lecture notes. Datavetenskap.