I014 Funkcionální programování
Fakulta informatikyjaro 2002
- Rozsah
- 3/0. 3 kr. (plus ukončení). Doporučované ukončení: zk. Jiná možná ukončení: k, z.
- Vyučující
- RNDr. Libor Škarvada (přednášející)
- Garance
- prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: RNDr. Libor Škarvada - Rozvrh
- St 17:00–19:50 D1
- Předpoklady
- I015 Úvod do funkc. progr.
- 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
- Informatika (program FI, B-IN)
- Informatika (program FI, M-IN)
- Učitelství výpočetní techniky pro střední školy (program FI, M-IN)
- Učitelství výpočetní techniky pro střední školy (program FI, M-SS)
- Výpočetní technika (program FI, B-IN)
- Cíle předmětu
- Kurs přináší pohled na funkcionální jazyky z hlediska jednoduchých matematických formalismů, kterými jsou různé modifikace a rozšíření (typovaného) lambda kalkulu. Věnuje se rovněž problematice implementace interpretů a kompilátorů a optimalizaci výpočtu.
- Osnova
- Netypovaný a typovaný lambda kalkul. Silná normalizace, Churchova-Rosserova vlastnost.
- Rekurse, věta o pevném bodě.
- Jazyk PCF a jeho sémantika.
- Typy. Problém otypování.
- Polymorfismus. Predikativní a impredikativní typové systémy.
- Typové třídy a konstruktorové třídy. Podtypy a typové systémy pro OOP.
- Imperativní prvky, vstup/výstup, ošetření výjimek, nedeterminismus, přepisovatelná pole, stav. Pokračování.
- Monády. Monadický datový typ IO.
- Implementace funkcionálních jazyků. SECD stroj. Překlad definic podle vzoru, strážených klauzulí, intensionálních seznamů.
- Grafová redukce. G-stroj. Superkombinátory, vynášení.
- Optimální redukce, plná lenost, plně líné vynášení.
- Literatura
- FIELD, Anthony J. a Peter G. HARRISON. Functional programming. 1st ed. Wokingham: Addison-Wesley Publishing Company, 1988, 602 s. ISBN 0-201-19249-7. info
- JONES, Simon L. Peyton. The implementation of functional programming languages. New York: Prentice Hall, 1987, xvi, 445 s. ISBN 0-13-453325-9. info
- Metody hodnocení
- Kurs je ukončen závěrečnou písemnou zkouškou.
- Další komentáře
- Předmět je vyučován každoročně.
I014 Funkcionální programování
Fakulta informatikyjaro 2001
- Rozsah
- 3/0. 3 kr. (plus ukončení). Doporučované ukončení: zk. Jiná možná ukončení: k, z.
- Vyučující
- RNDr. Libor Škarvada (přednášející)
- Garance
- prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: RNDr. Libor Škarvada - Rozvrh
- Út 17:00–19:50 D1
- Předpoklady
- I015 Úvod do funkc. progr.
- 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
- Informatika (program FI, B-IN)
- Informatika (program FI, M-IN)
- Učitelství výpočetní techniky pro střední školy (program FI, M-IN)
- Učitelství výpočetní techniky pro střední školy (program FI, M-SS)
- Výpočetní technika (program FI, B-IN)
- Cíle předmětu
- Kurs přináší pohled na funkcionální jazyky z hlediska jednoduchých matematických formalismů, kterými jsou různé modifikace a rozšíření (typovaného) lambda kalkulu. Věnuje se rovněž problematice implementace interpretů a kompilátorů a optimalizaci výpočtu.
- Osnova
- Netypovaný a typovaný lambda kalkul. Silná normalizace, Churchova-Rosserova vlastnost.
- Rekurse, věta o pevném bodě.
- Jazyk PCF, denotační a operační sémantika, úplná abstrakce, paralelní or.
- Typy. Problém otypování.
- Polymorfismus. Predikativní a impredikativní typové systémy.
- Typové třídy a konstruktorové třídy. Podtypy. Typové systémy pro OOP.
- Imperativní prvky, vstup/výstup, ošetření výjimek, nedeterminismus, přepisovatelná pole, stav. Pokračování.
- Monády. Monadický datový typ IO.
- Implementace funkcionálních jazyků. SECD stroj. Překlad definic podle vzoru, strážených klauzulí, intensionálních seznamů.
- Grafová redukce. G-stroj. Superkombinátory, vynášení.
- Optimální redukce, plná lenost, plně líné vynášení.
- Literatura
- FIELD, Anthony J. a Peter G. HARRISON. Functional programming. 1st ed. Wokingham: Addison-Wesley Publishing Company, 1988, 602 s. ISBN 0-201-19249-7. info
- JONES, Simon L. Peyton. The implementation of functional programming languages. New York: Prentice Hall, 1987, xvi, 445 s. ISBN 0-13-453325-9. info
- Metody hodnocení
- Kurs je ukončen závěrečnou písemnou zkouškou.
- Další komentáře
- Předmět je vyučován každoročně.
I014 Funkcionální programování
Fakulta informatikyjaro 2000
- Rozsah
- 3/0. 3 kr. (plus ukončení). Doporučované ukončení: zk. Jiná možná ukončení: k, z.
- Vyučující
- RNDr. Libor Škarvada (přednášející)
- Garance
- prof. RNDr. Mojmír Křetínský, CSc.
Katedra teorie programování – Fakulta informatiky
Kontaktní osoba: RNDr. Libor Škarvada - Předpoklady
- I015 Úvod do funkc. progr.
- 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
- Informatika (program FI, B-IN)
- Informatika (program FI, M-IN)
- Učitelství výpočetní techniky pro střední školy (program FI, M-IN)
- Učitelství výpočetní techniky pro střední školy (program FI, M-SS)
- Výpočetní technika (program FI, B-IN)
- Osnova
- Kurs přináší pohled na funkcionální jazyky z hlediska jednoduchých matematických formalismů, kterými jsou různé modifikace a rozšíření (typovaného) lambda kalkulu. Věnuje se rovněž problematice implementace interpretů a kompilátorů a optimalizaci výpočtu.
- Netypovaný a typovaný lambda kalkul. Silná normalizace, Churchova-Rosserova vlastnost.
- Rekurse, věta o pevném bodě.
- Jazyk PCF, denotační a operační sémantika, úplná abstrakce, paralelní or.
- Typy. Problém otypování.
- Polymorfismus. Predikativní a impredikativní typové systémy.
- Typové třídy a konstruktorové třídy. Podtypy. Typové systémy pro OOP.
- Imperativní prvky, vstup/výstup, ošetření výjimek, nedeterminismus, přepisovatelná pole, stav. Pokračování.
- Monády. Monadický datový typ IO.
- Implementace funkcionálních jazyků. SECD stroj. Překlad definic podle vzoru, strážených klauzulí, intensionálních seznamů.
- Grafová redukce. G-stroj. Superkombinátory, vynášení.
- Optimální redukce, plná lenost, plně líné vynášení.
- Literatura
- FIELD, Anthony J. a Peter G. HARRISON. Functional programming. 1st ed. Wokingham: Addison-Wesley Publishing Company, 1988, 602 s. ISBN 0-201-19249-7. info
- JONES, Simon L. Peyton. The implementation of functional programming languages. New York: Prentice Hall, 1987, xvi, 445 s. ISBN 0-13-453325-9. info
- Metody hodnocení
- Kurs je ukončen závěrečnou písemnou zkouškou.
- Informace učitele
Termín
Kurs je veden formou přednášek a probíhá v letním semestru v rozsahu 3 jednotky (150 minut) týdně.
- Další komentáře
- Předmět je vyučován každoročně.
Výuka probíhá každý týden.
I014 Funkcionální programování
Fakulta informatikyjaro 1999
- Rozsah
- 3/0. 3 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
- Předpoklady
- I015 Úvod do funkc. progr.
Předpokládá se absolvování kursu I015 Úvod do funkcionálního programování. - 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
- Informatika (program FI, B-IN)
- Informatika (program FI, M-IN)
- Učitelství výpočetní techniky pro střední školy (program FI, M-IN)
- Učitelství výpočetní techniky pro střední školy (program FI, M-SS)
- Výpočetní technika (program FI, B-IN)
- Osnova
- Kurs přináší pohled na funkcionální jazyky z hlediska jednoduchých matematických formalismů, kterými jsou různé modifikace a rozšíření (typovaného) lambda kalkulu. Věnuje se rovněž problematice implementace interpretů a kompilátorů a optimalizaci výpočtu.
- Netypovaný a typovaný lambda kalkul. Silná normalizace, Churchova-Rosserova vlastnost.
- Rekurse, věta o pevném bodě.
- Jazyk PCF, denotační a operační semantika, úplná abstrakce, paralelní or.
- Typy. Problém otypování.
- Polymorfismus. Predikativní a impredikativní typové systémy.
- Typové třídy a konstruktorové třídy. Podtypy. Typové systémy pro OOP.
- Imperativní prvky, vstup/výstup, ošetření výjimek, nedeterminismus, přepisovatelná pole, stav. Pokračování.
- Monády. Monadický datový typ IO.
- Implementace funkcionálních jazyků. SECD stroj. Překlad definic podle vzoru, strážených klauzulí, intensionálních seznamů.
- Grafová redukce. G-stroj. Superkombinátory, vynášení.
- Optimální redukce, plná lenost, plně líné vynášení.
- Informace učitele
Termín
Kurs je veden formou přednášek a probíhá v letním semestru v rozsahu 3 jednotky (150 minut) týdně.
Některé odkazy
Věta o konfluenci (PS, DVI)
Monadické kombinátory pro syntaktickou analýzu (článek Graham Huttona a Erika Meijera),
ukázky úloh z minulých zkoušek
Příklady funkcionálních programů- Další komentáře
- Předmět je vyučován každoročně.
Výuka probíhá každý týden.
I014 Funkcionální programování
Fakulta informatikyléto 1998
- Rozsah
- 3/0. 3 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
- Předpoklady
- I015 Úvod do funkc. progr.
Předpokládá se absolvování kursu I015 Úvod do funkcionálního programování. - 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
- Informatika (program FI, B-IN)
- Informatika (program FI, M-IN)
- Učitelství výpočetní techniky pro střední školy (program FI, M-IN)
- Učitelství výpočetní techniky pro střední školy (program FI, M-SS)
- Výpočetní technika (program FI, B-IN)
- Osnova
- Kurs přináší pohled na funkcionální jazyky z hlediska jednoduchých matematických formalismů, kterými jsou různé modifikace a rozšíření (typovaného) lambda kalkulu. Věnuje se rovněž problematice implementace interpretů a kompilátorů a optimalizaci výpočtu.
- Netypovaný a typovaný lambda kalkul. Silná normalizace, Churchova-Rosserova vlastnost.
- Rekurse, věta o pevném bodě.
- Jazyk PCF, denotační a operační semantika, úplná abstrakce, paralelní or.
- Typy. Problém otypování.
- Polymorfismus. Predikativní a impredikativní typové systémy.
- Typové třídy a konstruktorové třídy. Podtypy. Typové systémy pro OOP.
- Imperativní prvky, vstup/výstup, ošetření výjimek, nedeterminismus, přepisovatelná pole, stav. Pokračování.
- Monády. Monadický datový typ IO.
- Implementace funkcionálních jazyků. SECD stroj. Překlad definic podle vzoru, strážených klauzulí, intensionálních seznamů.
- Grafová redukce. G-stroj. Superkombinátory, vynášení.
- Optimální redukce, plná lenost, plně líné vynášení.
- Informace učitele
Termín
Kurs je veden formou přednášek a probíhá v letním semestru v rozsahu 3 jednotky (150 minut) týdně.
I014 Funkcionální programování
Fakulta informatikyléto 1997
- Rozsah
- 3/0. 3 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
- Předpoklady
- Předpokládá se absolvování kursu I015 Úvod do funkcionálního programování.
- 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
- Informatika (program FI, B-IN)
- Informatika (program FI, M-IN)
- Učitelství výpočetní techniky pro střední školy (program FI, M-IN)
- Učitelství výpočetní techniky pro střední školy (program FI, M-SS)
- Výpočetní technika (program FI, B-IN)
- Osnova
- Kurs přináší pohled na funkcionální jazyky z hlediska jednoduchých matematických formalismů, kterými jsou různé modifikace a rozšíření (typovaného) lambda kalkulu. Věnuje se rovněž problematice implementace interpretů a kompilátorů a optimalizaci výpočtu.
- Netypovaný a typovaný lambda kalkul. Silná normalizace, Churchova-Rosserova vlastnost.
- Rekurse, věta o pevném bodě.
- Jazyk PCF, denotační a operační semantika, úplná abstrakce, paralelní or.
- Typy. Problém otypování.
- Polymorfismus. Predikativní a impredikativní typové systémy.
- Typové třídy a konstruktorové třídy. Podtypy. Typové systémy pro OOP.
- Imperativní prvky, vstup/výstup, ošetření výjimek, nedeterminismus, přepisovatelná pole, stav. Pokračování.
- Monády. Monadický datový typ IO.
- Implementace funkcionálních jazyků. SECD stroj. Překlad definic podle vzoru, strážených klauzulí, intensionálních seznamů.
- Grafová redukce. G-stroj. Superkombinátory, vynášení.
- Optimální redukce, plná lenost, plně líné vynášení.
- Informace učitele
Termín
Kurs je veden formou přednášek a probíhá v letním semestru v rozsahu 3 jednotky (150 minut) týdně.
I014 Funkcionální programování
Fakulta informatikyléto 1996
- Rozsah
- 0/0. 3 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
- Předpoklady
- Předpokládá se absolvování kursu I015 Úvod do funkcionálního programování.
- 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
- Informatika (program FI, B-IN)
- Informatika (program FI, M-IN)
- Učitelství výpočetní techniky pro střední školy (program FI, M-IN)
- Učitelství výpočetní techniky pro střední školy (program FI, M-SS)
- Výpočetní technika (program FI, B-IN)
- Osnova
- Kurs přináší pohled na funkcionální jazyky z hlediska jednoduchých matematických formalismů, kterými jsou různé modifikace a rozšíření (typovaného) lambda kalkulu. Věnuje se rovněž problematice implementace interpretů a kompilátorů a optimalizaci výpočtu.
- Netypovaný a typovaný lambda kalkul. Silná normalizace, Churchova-Rosserova vlastnost.
- Rekurse, věta o pevném bodě.
- Jazyk PCF, denotační a operační semantika, úplná abstrakce, paralelní or.
- Typy. Problém otypování.
- Polymorfismus. Predikativní a impredikativní typové systémy.
- Typové třídy a konstruktorové třídy. Podtypy. Typové systémy pro OOP.
- Imperativní prvky, vstup/výstup, ošetření výjimek, nedeterminismus, přepisovatelná pole, stav. Pokračování.
- Monády. Monadický datový typ IO.
- Implementace funkcionálních jazyků. SECD stroj. Překlad definic podle vzoru, strážených klauzulí, intensionálních seznamů.
- Grafová redukce. G-stroj. Superkombinátory, vynášení.
- Optimální redukce, plná lenost, plně líné vynášení.
- Informace učitele
Termín
Kurs je veden formou přednášek a probíhá v letním semestru v rozsahu 3 jednotky (150 minut) týdně.
- Statistika zápisu (nejnovější)