[ Skip to the content ]

Institute of Formal and Applied Linguistics Wiki


[ Back to the navigation ]

This is an old revision of the document!


PFL080 Haskell nejen pro informatiky

English version

Vyučující Otakar Smrž, Ph.D.
Rozsah 2/1 Z+Zk
Platnost od ZS 2007
Souřadnice Čt 10:40–13:05 SU1

Osnova

11.10.2007 Introduction -- Types and Polymorphism -- Laziness

18.10.2007 "Why FP Matters" -- Higher-Order Functions -- Tree Structures

25.10.2007 "Haskell and XML" -- Type Classes -- Pretty-Printing

01.11.2007 "A Prettier Printer" -- Monads -- Parsing

08.11.2007 "Monadic Parsing in Haskell" -- Monad Laws -- Input/Output

15.11.2007 "Cabal" -- "Haddock" -- Functional Dependencies

22.11.2007 "Fun with FD" -- Curry-Howard Correspondence -- Existential Types

29.11.2007 LECTURE CANCELLED

06.12.2007 “Proofs are Programs” – Combinatory Categorial Grammar

13.12.2007 “Using Types to Parse Natural Language” – Finite Maps – Arrays

20.12.2007 “Functional Morphology” – Functional Queues – Red-Black Trees

03.01.2008 Haskell versus O'Caml – Projects – Darcs

10.10.2008 QuickCheck – MapReduce et al. – Concluding Notes

Anotace

Haskell je čistě funkcionální programovací jazyk. Jeho studium vybízí k hledání souvislostí mezi různými oblastmi informatiky, logiky i lingvistiky. Haskell je ale též moderní prostředek pro přesný, přitom stručný a srozumitelný popis řešení obecných problémů.

V přednášce se budeme věnovat výrazným rysům jazyka a zaměříme se na jeho aplikace v podobě tzv. doménově specifických jazyků. Ve cvičeních budou studenti diskutovat své referáty z odborné literatury.

Předmět je určen pro studenty magisterského nebo doktorandského studia zmiňovaných oborů. Absolvování PRG005 není ani podmínkou, ani překážkou účasti. S některými probíranými tématy se lze setkat i v PRG040, příp. AIL006 a AIL078. V našem případě bude míra teoretického detailu věcí dohody a složení referátů bude záviset na zájmu studentů.

Literatura

Sylabus

  1. Základní funkce a datové typy
  2. Výpočetní model a lambda kalkulus
  3. Rekurze, abstrakce, funkce vyššího řádu
  4. Polymorfní typy versus třídy typů
  5. Monády a jejich využití
  6. Parsing a pretty-printing
  7. Doménově specifické jazyky
  8. Související teoretické otázky
  9. Užitečné nástroje pro programátory

Odkazy

Advanced Programming by Benjamin C. Pierce – volná inspirace pro tento předmět

Advanced Functional Programming at Saarbrücken

"Impressive Haskell" by Otakar Smrž

Studijní informační systém


[ Back to the navigation ] [ Back to the content ]