TDDA43 | Programming Theory, 6 ECTS-points /Programmeringsteori/ Advancement level: C | |
Aim: Getting familiar with methods of formal specification of programming languages, especially of their semantics (i.e. meaning). Orientation on proving correctness of programs. Prerequisites: Discrete mathematics and logic (TDDB90, TATM90 or equivalent). A main course on programming which includes imperative languages (like computer languages and programming TDDB80). Supplementary courses: TDDB44 Compiler Construction, advanced programming courses like TDDA69 Data and program structures and TDDA 41 Logic Programming. Course organization: The theory is presented during lectures and in tutorial classes. Labs and tutorial classes provide practice.Course content: Transition systems, lambda calculus, operational semantics, denotational semantics and axiomatic semantics. Applying axiomatic semantics to proving program correctness.Course literature: H. R. Nielson and F. Nielson. Semantics with Applications. John Wiley and Sons 1992 | ||
LABA | , 1,5 p. | |
UPGA | Hand-in assignments, 2,5 p. | |
Lab excercises, 1,5 p |