P006 Struktury programovacích jazyků

Fakulta informatiky
podzim 1998
Rozsah
2/0. 2 kr. Doporučované ukončení: zk. Jiná možná ukončení: k, z.
Vyučující
RNDr. Libor Škarvada (přednášející)
Garance
Kontaktní osoba: RNDr. Libor Škarvada
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
Osnova
  • 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.
Další komentáře
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích léto 1996, léto 1997, zima 1997, podzim 1999, podzim 2000, podzim 2001.