MSc in a non-computer science area and some programming experience.
The course presents basic principles behind the design of programming languages. Basic notions are language, abstraction, typing, and semantics. Basic principles of integrated and interactive programming systems are also presented.
The course is mainly based on lectures, estimated 15 hours, 3 hours per week. The students should have a quick reading of the material before each lecture to enable discussions. There will also be a few practical programming exercises, e.g. generating a small translator from specifications.
Homework problems. A few practical programming excercises in
Active participation during lectures.
The first hour (13.15-14.00) of each lecture is devoted to discussions of solutions of previous
exercise assignment, where students present their solutions. Anybody who has not completed those exercises should not be present the first hour, and will have to do a separate presentation of solutions.
Louden: Programming Languages, Principles and Practice. PWS Publishing Company,
Peter Fritzson: Specifying Practical Translators using Natural Semantics and RML. (kompendium).
Peter Fritzson: System Development Environments. (kompendium)
Peter Fritzson, Johan
Gunnarsson, Mats Jirstrand:
MathModelica - An Extensible Modeling and Simulation Environment with Integrated Graphics and Literate Programming. (paper, 14 pages)
Course web page:
Course material and Mathematica lecture notebooks are available here.
See the lectureplan for reading instructions.
Fall 2004, Week 42-48
Lecture 1+2: October 11, 13.15-16.00 hus B, Donald Knuth
Lecture 3: October 18, 13.15-16.00 hus B, Donald Knuth
Lecture 4: Nov 1, 13.15-16.00 hus B, Donald Knuth
Lecture 5: Nov 8, 13.15-16.00 hus B, Donald Knuth
Lecture 6: Nov 22 13.15-16.00 hus B, Donald Knuth (last lecture, most exercises completed)
Donald Knuth,hus B, Sas stora konferensrum,2:nd floor, B-corridor, close to south end of B-house