|
|
home · studies

Foundation of Programming Languages |
Module Type: |
General Foundation |
Module Code: |
424 |
Syllabus: |
Principles of programming languages design. Semantics of Programming Languages. The (typed and untyped) Lambda Calculus. Syntax and axiomatic and operational semantics. Fixpoint operators and definability of recursive functions. The typed Lambda Calculus and PCF. Language and semantics. Type-checking system. Extension of PCF with recursive types. Introduction to polymorphism and elements of denotational semantics. |
Module Aims-Objectives: |
To introduce students to the foundations of functional programming, and to teach them the principles underlying the design and semantics of programming languages. Upon completing this course students should be able to:
1.Comprehend the lambda calculus syntax, with and without types.
2.Understand the axiomatic and operational semantics of the language.
3.Define recursive functions in language of the lambda calculus.
4.Understand the passage from the lambda calculus to implemented functional languages.
|
Bibliography: |
• "Foundations and Semantics for programming languages:
Lambda Calculi ", Ch. Hartonas, Ziti Publishing.
|
|
|
|
|
|