P006 Structure of Programming Languages

Faculty of Informatics
Autumn 1998
Extent and Intensity
2/0. 2 credit(s). Recommended Type of Completion: zk (examination). Other types of completion: k (colloquium), z (credit).
Teacher(s)
RNDr. Libor Škarvada (lecturer)
Guaranteed by
Contact Person: RNDr. Libor Škarvada
Course Enrolment Limitations
The course is also offered to the students of the fields other than those the course is directly associated with.
fields of study / plans the course is directly associated with
Syllabus (in Czech)
  • Stručná historie vývoje programovacích jazyků, přehled základních paradigmat.
  • Syntax, jazyk, program. Abstraktní a konkrétní syntax.
  • Statická sémantika. Otypování, validační funkce.
  • Prostor jmen, viditelnost. Bloková a modulární struktura jazyka.
  • Typové systémy. Typy a typové konstruktory. Polymorfní typy, parametrický a inklusní polymorfismus, přetížení, typové třídy. Podtypy, dědičnost. Typy jako sorty (množiny), signatury (heterogenní algebry), teorie (modely teorií).
  • Dynamická sémantika, model, výpočet.
  • Imperativní paradigma. Příkazy, přepisovatelné proměnné. Stav, operátory pro změnu stavu.
  • Funkcionální paradigma. Výrazy, funkce, parametry. Aplikace, abstrakce, lambda kalkul, redukční strategie, nekonečné datové struktury.
  • Logické paradigma. Formule, predikát, splnitelnost. Hornovy klausule, resoluce, unifikace.
  • Volání funkcí a předávání parametrů. Volání hodnotou a jménem. Volání výsledkem, hodnotou-výsledkem.
Language of instruction
Czech
Further Comments
The course is taught annually.
The course is taught every week.
The course is also listed under the following terms Spring 1996, Spring 1997, Autumn 1997, Autumn 1999, Autumn 2000, Autumn 2001.
  • Enrolment Statistics (Autumn 1998, recent)
  • Permalink: https://is.muni.cz/course/fi/autumn1998/P006