Neprocedurální programování > Neprocedurální programování

Neprocedurální programování

Published on 28. září 2016 22:26

Požadavky na zápočet

  1. Domácí úkoly

    • Během semestru dostanete několik domácích úkolů na témata, která budeme probírat na cvičení. Jejich cílem je hlavně to, abyste si zkusili v Prologu a Haskellu něco naprogramovat už během semestru a ne až před zkouškou.
    • Pro získání zápočtu je potřeba mít na konci semestru alespoň 60 % možných bodů ze všech úkolů. Navíc je potřeba mít aspoň 50 % z úkolů na Prolog a alespoň 50 % z úkolů na Haskell. Na každých druhých cvičeních dostanete úkol, na jeho odevzdání budete mít týden (do začátku dalších cvičení). Po konci těchto cvičení vám systém přidělí úkoly pěti vašich spolužáků, které ohodnotíte. Úkoly se hodnotí ve třech kritériích - správnost řešení, efektivita řešení a dokumentace/komentáře/pochopitelnost kódu. Nejvyšší váhu (10) má správnost řešení, efektivita má váhu 7 a dokumentace 3. Na ohodnocení máte opět týden. Za úkol můžete získat max. 80 bodů, za ohodnocení úkolů ostatních max. 20 bodů (dohromady za všech pět).
    • Hodnocení spolužáků se nebojte, budu na to dohlížet, a kdybyste někomu dali málo nebo moc bodů, tak to budu korigovat. Cílem hodnocení je hlavně to, abyste viděli i jiná řešení než to vaše a naučili se z nich třeba nové triky.
    • Úkoly odevzdávejte do Moodle předmětu. Klíč pro zápis vám říkal Tomáš Dvořák na první přednášce a já na prvním cvičení, jestli ho nevíte, ozvěte se.
  2. Zápočtový program v Prologu nebo Haskellu

    • Nápady na vhodná témata můžete najít např. na stránkách Jana Hrice.
    • Téma si vyberte a dohodněte se mnou do konce dubna (může být později, pokud chcete dělat zápočtový program v Haskellu, ale dejte mi vědět včas)
    • Počítejte s tím, že zápočet potřebujete ještě před zkouškou.
    • S programem je potřeba odevzdat i rozumnou dokumentaci a testovací data (buď přímo jako testovací dotazy připravené v programu, nebo zvlášť v textovém souboru).
    • Programy budete předvádět osobně nejspíš v labu na ms po domluvě, každopádně mi je napřed včas pošlete mailem, ať se na ně stihnu podívat.

Průběh cvičení

Toto je předběžný plán cvičení podle minulého roku. Je možné (pravděpodobné), že nebude dodržen. Odkazované texty se také pravděpodobně budou mírně měnit.

Datum Út Datum Čt Téma
19. 2. 2019 21. 2. 2019 Prolog - rodinné vztahy, Zdrojový kód
26. 2. 2019 28. 2. 2019 Prolog - seznamy, Zdrojový kód
5. 3. 2019 7. 3. 2019 Prolog - seznamy II, aritmetika, Zdrojový kód
12. 3. 2019 14. 3. 2019 Prolog - prohledávání, rozdílové seznamy, Zdrojový kód
19. 3. 2019 21. 3. 2019 Prolog - stromy, Zdrojový kód
26. 3. 2019 28. 3. 2019 Prolog - grafy, prohledávání prostoru stavů, Zdrojový kód
2. 4. 2019 4. 4. 2019 Haskell - typy, základní funkce, Zdrojový kód
9. 4. 2019 11. 4. 2019 Haskell - seznamy, skládání funkcí, Zdrojový kód
16. 4. 2019 18. 4. 2019 Haskell - vlastní typy, Zdrojový kód
23. 4. 2019 25. 4. 2019 Haskell - stromy, obecný fold, Zdrojový kód
30. 4. 2019 2. 5. 2019 Haskell - monády, Zdrojový kód
7. 5. 2019 9. 5. 2019 Haskell - State, IO, record syntaxe, zipper, Zdrojový kód
21. 5. 2019 16. 5. 2019 TBA
----- 23. 5. 2019 TBA