Programming Languages and Type Systems
M.Sc.
course (in Romanian)
Instructor: Prof. Eneia Nicolae Todoran
Course description:
The course teaches the principles of imperative, functional,
object-oriented and concurrent programming languages. Topics: denotational
semantics (states, environments,
continuations, fixed-point semantics, concurrency semantics, classic domains,
metric semantics), operational semantics (transition systems, structural operational semantics), type systems (simply-typed lambda
calculus, polymorphism, subtyping, type inference). The approach is intuitive, with all mathematical
models implemented using an appropriate programming language. Haskell is used
as a meta-language for denotational semantics.
Teaching activities:
Lectures: 28 hours
Assessment:
Research paper: 25%
Final Examination: 75%
References: