The basic properties of functional languages - functions, referential transparency, recursion, types, polymorphism, higher order functions, lazy and strict evaluation. Overview of lazy functional language Haskell and its programming techniques.
The basic constructions of logic programs and ways of interpretation. Presentation of knowledge bases and puzzles in Prolog. Recursive structures: arithmetic expressions and lists. Prolog's meta facilities, second order predicates and non-logical commands.
Lecturers: Varmo Vene, PhD, Tõnu Tamme MSc |