Both sides previous revision
Poprzednia wersja
Nowa wersja
|
Poprzednia wersja
Nowa wersja
Both sides next revision
|
pl:dydaktyka:pp:start [2018/06/02 11:09] esimon [Haskell] |
pl:dydaktyka:pp:start [2018/11/15 17:34] ligeza [Programowanie w Logice: Edycja 2018 (zima; 3h/week)] |
| |
| |
===== WYKŁADY (Prolog) ===== | ===== WYKŁADY: Programowanie w Logice (Prolog) ===== |
| |
| |
| ==== Programowanie w Logice: Edycja 2018 (zima; 3h/week)==== |
| |
| - **Paradygmaty programowania: klasyfikacje języków programowania. Języki proceduralne a deklaratywne. Programowanie logiczne: Prolog. Intuicyjne przedstawienie Prologu. Składnia Prologu. Model obliczeniowy: implementacja DFS, nawroty, //backtracking//. Indeterminizm. Zmienne i ich rola. 10 prostych przykładów** [5.10.2018; ALi] |
| - **Prolog: składnia i semantyka. Termy. Unifikacja. Pamięć wewnętrzna. Struktury listowe. Konstrukcja, rola i obsługa list. Predykaty member/2, select/3 i append/2.** [12.10.2018; ALi] |
| - **Wykład w dn. 19.10.2018 nie odbędzie się** [ALi] |
| - **Struktury listowe. Termy a listy. Konstrukcja, rola i obsługa list. Predykaty member/2, select/3 i append/2. Interpretacja działania - drzewo wnioskowania, nawroty. Listy jako sekwencje, zbiory i zbiory z powtórzeniami. Wybrane operacje na listach. Przykłady zaawansowanych definicji/zadania.** [26.10.2018; ALi] |
| - **Prolog: Struktury listowe. Sortowanie. Zaawansowane operacje na listach; przykłady zadań i ich rozwiązań. Rekurencja a iteracje; pętle z fail. Metapredykaty operacji na listach. Wstęp do metaprogramowania. Przykłady metaprogramowania.** [9.11.2018; ALi] |
| - <fc #ff0000>Njabliższy wykład - już ostatni :</fc> <fc #ff00ff>Prolog: reprezentacja i przetwarzanie wiedzy. Metaprogramowanie. Programowanie z ograniczeniami (Constraint Programming). Biblioteka clpfd. </fc> [16.11.2018; ALi] <fc #008080> Prezentacja specjalna: deklaratywny język programowania z ograniczeniami [[http://www.picat-lang.org/|Picat]]</fc> |
| - Programowanie deklaratywne a proceduralne. Prolog a Python - porównanie wybranych konstrukcji. Programowania z ograniczeniami (clp(fd)). ECLiPSe CLP. B-Prolog. Numberjack. ASP. Problog. Picat. [materiał fakultatywny] |
| - E-Learning: Prolog: programowanie deklaratywne. [materiał fakultatywny] [[http://kti.mff.cuni.cz/~bartak/prolog/contents.html|Prolog]] |
| |
| ---- |
| * [[https://polydev.pl/2017/12/16/realne-zastosowania-jezyka-prolog/|Ciekawe zastosowania Prologu]] |
| * [[http://www.pathwayslms.com/swipltuts/html/|Web Applications in SWI-Prolog: A Tutorial]] |
| |
| |
| |
| ---- |
| Propozycje prezentacji do przygotowania w ramach samodzielnej aktywności: |
| |
| * Answer Set Programming (ASP) [[https://potassco.org/|Potassco ASP]] |
| * B-Prolog + Constraints [[http://www.picat-lang.org/bprolog/|B-Prolog]] |
| * GNU Prolog + Constraints [[http://www.gprolog.org/|GNU Prolog]] |
| * Picat [[http://www.picat-lang.org/|Picat]] |
| * SWI-Prolog - Packages + clp(fd) [[http://www.swi-prolog.org/|SWI-Prolog]] |
| * Problog [[https://dtai.cs.kuleuven.be/problog/|Problog]] |
| |
| Inne - do uzgodnienia. |
| |
| __Selected links:__ |
| |
| * Prolog [[https://en.wikipedia.org/wiki/Prolog|Prolog]] |
| * Prolog - Wikibooks: [[https://en.wikibooks.org/wiki/Prolog|Prolog]] |
| * Prolog - Books: [[http://freecomputerbooks.com/langPrologBooks.html|Free Books on Prolog]] |
| ---- |
| |
| __Useful pages: courses + tutorials + examples:__ |
| |
| * [[https://ktiml.mff.cuni.cz/~bartak/|Page of Roman Barták]] |
| * [[http://hakank.org/|The famous Hakank Page]] |
| |
| |
- [[.haskell:lab-more-funcs|Więcej funkcji]] | - [[.haskell:lab-more-funcs|Więcej funkcji]] |
- [[.haskell:lab-monads-types|Typy i Monady]] | - [[.haskell:lab-monads-types|Typy i Monady]] |
- [[.haskell:lab-monads-types|Haskell IO]] | - [[.haskell:lab-io|Haskell IO]] |
- FIXME lab 6 | - [[.haskell:lab-hunit|HUnit]] |
| |
Instrukcje opracowano na podstawie: [[http://learnyouahaskell.com/chapters|podręcznika]], [[https://courses.edx.org/courses/course-v1:DelftX+FP101x+3T2015/course/|kursu na edX]], [[https://www.futurelearn.com/courses/functional-programming-haskell/|kursu na FutureLearn]], [[https://www.hackerrank.com/domains/fp|zadań z HackerRank]] | Instrukcje opracowano na podstawie: [[http://learnyouahaskell.com/chapters|podręcznika]], [[https://courses.edx.org/courses/course-v1:DelftX+FP101x+3T2015/course/|kursu na edX]], [[https://www.futurelearn.com/courses/functional-programming-haskell/|kursu na FutureLearn]], [[https://www.hackerrank.com/domains/fp|zadań z HackerRank]] |