Semantics of Programming Languages
| Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
|---|---|---|---|---|
| NIE-SEM | Z,ZK | 5 | 2P+1C | anglicky |
- Garant předmětu:
- Přednášející:
- Cvičící:
- Předmět zajišťuje:
- katedra teoretické informatiky
- Anotace:
-
Cílem předmětu je uvést studenty do základů sémantiky programovacích jazyků, která je základem pro studium a implementaci programovacích jazyků.
Tyto techniky jsou také důležité pro verifikaci programů, implementaci optimalizací a obecný návrh programovacích jazyků.
Důraz bude na porovnání operační a denotační sémantiky. Použité techniky mají uplatnění i v případě analýzy jazyků daných pouze pomocí operační sémantiky.
Kurz umožní studentům získat potřebné dovednosti pro implementaci jazykových konstrukcí, ať už jejich popis pochází z teoretických nebo inženýrských zdrojů v literatuře.
- Požadavky:
- Osnova přednášek:
-
1. Přehled kurzu, motivace a vztah k praxi návrhu a implementace programovacích jazyků.
2. Pravidlová a strukturální indukce, vztah operační a denotační sémantiky.
3. Kontextuální a big-step sémantika.
4. Abstraktní stroje a kontinuace.
5. Typovaný lambda kalkulus s aritmetikou.
6. Sémantická a typová korektnost.
7. Sémantická úplnost.
8. Rekurzivní funkce a jazyk PCF.
9. Adekvátnost a kontextové lemma.
10. Otázka plné abstrakce (full abstraction) pro PCF.
11. Hoareův odvozovací systém I.
12. Hoareův odvozovací systém II.
13. Další témata.
- Osnova cvičení:
-
bude doplněno
- Cíle studia:
-
Cílem předmětu je uvést studenty do základů sémantiky programovacích jazyků, která je základem pro studium a implementaci programovacích jazyků.
Tyto techniky jsou také důležité pro verifikaci programů, implementaci optimalizací a obecný návrh programovacích jazyků.
- Studijní materiály:
-
1. Robert Harper: Practical Foundations for Programming Languages, 2nd Edition. Cambridge University Press, 2016. ISBN9781107150300.
2. Winskel, G.: The Formal Semantics of Programming Languages. MIT Press, 1993. ISBN 9780262291453.
3. Tobias Nipkow , Gerwin Klein: Concrete Semantics, With Isabelle/HOL. Springer Cham, 2014. ISBN 978-3-319-10541-3.
4. Streicher, T: Domain-theoretic foundations of functional programming. World Scientific Publishing Company, 2006 ISBN 981-270-142-7.
5. Tennent, R. D.: Semantics of Programming Languages. ISBN 9780138055998.
6. Gunter, C. A.: Semantics of Programming Language. MIT Press, 1992. ISBN 9780262570954.
- Poznámka:
-
předmět je vyučován v angličtině.
- Další informace:
- bude doplněno
- Pro tento předmět se rozvrh nepřipravuje
- Předmět je součástí následujících studijních plánů: