Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Both sides previous revision Poprzednia wersja
Nowa wersja
Poprzednia wersja
pl:dydaktyka:pp:start [2018/05/24 02:11]
esimon [Haskell]
pl:dydaktyka:pp:start [2019/11/20 13:05] (aktualna)
ligeza [Programowanie w Logice: Edycja 2019 (zima; 2h/week)]
Linia 2: Linia 2:
  
  
-===== WYKŁADY (Prolog) =====+===== WYKŁADY: Programowanie w Logice ​(Prolog) ===== 
 + 
 + 
 +==== Programowanie w Logice: Edycja 2019  (zima; 2h/​week)==== 
 + 
 +Wykłady odbywają się we wtorki, 9:30-11:00, sala 224/C-2. 
 + 
 +  - **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** [1.10.2019; ALi] 
 +  - **Obliczenia numeryczne w Prologu. Silnia. Mechanizm DFS z nawrotami. Przykład liczby.pl/​warianty. Wymuszanie nawrotów: fail. Pamięć globalna: assert/​retract. Wprowazdzenie do termów. Zmienne i ich rola oraz interpretacja/​uzytkowanie.** [8.10.2019; Ali] 
 +  - **Prolog: kontynuacja przykładów. Prolog: składnia i semantyka. Termy. Unifikacja. Pamięć wewnętrzna. Podstawy logiczne Prologu: fakty, klauzule Horna, rezolucja. Struktury listowe - wprowadzenie.** [15.10.2019;​ ALi]  
 +  - **Algorytm unifikacji termów. Mechanizmy obliczeniowe:​ rekurencja, iteracja, nawroty. 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.** [22.10.2019;​ ALi] 
 +  - **Struktury listowe. Bazowe definicje rekurencyjne. Sortowanie. Zaawansowane operacje na listach; przykłady zadań i ich rozwiązań (Bridge and Torch; Einstein). Listy-Tricks. Rekurencja a iteracje; pętle z fail.** ​ [29.10.2018;​ ALi] 
 +  -  **Listy - operacje zaawansowane - dokończenie. Metapredykaty operacji na listach. Prolog: reprezentacja i przetwarzanie wiedzy. Sterowanie wnioskowaniem:​ negacja (not), cut i fail. Wstęp do metaprogramowania. ​ Przykłady metaprogramowania.** ​ [5.12.2019; ALi] 
 +  - **Metaprogramowanie. Reprezentacja i przetwarzanie wiedzy. Przykłady zastosowań. Programowanie deklaratywne a proceduralne;​ Prolog a Python - porównanie wybranych konstrukcji. Programowanie z ograniczeniami (Constraint Programming). Biblioteka clpfd. ​ ECLiPSe CLP. B-Prolog. Numberjack. ASP.** [12.11.2019;​ ALi] 
 +<fc #​008080>​Prezentacje specjalne:</​fc>​  
 +  * {{ :​pl:​dydaktyka:​pp:​picat.pdf |Picat}},  
 +  * [[https://​github.com/​AdamKlekowski/​prolog_Bayesian_networks|Problog]],​ 
 +  * {{ :​pl:​dydaktyka:​pp:​prologibmnotes.pdf |Watson - IBM}} 
 +<fc #​ff00ff>​Kolokwium zaliczeniowe</​fc>:​ termin do ustalenia. 
 + 
 + ​[[http://​home.agh.edu.pl/​~ligeza/​wiki/​|Materiały na mojej stronie www]]; zakładki:​ 
 +  * [[http://​home.agh.edu.pl/​~ligeza/​wiki/​prolog:​intro|**Prolog**]] oraz  
 +  * [[http://​home.agh.edu.pl/​~ligeza/​wiki/​prolog:​course|**New Course of Prolog**]] 
 + 
 +E-Learning/​materiał uzupełniający:​  
 + 
 + 
 + 
 +---- 
 +<fc #​9400d3>​Przykłady z wykładów - do pobrania:</​fc> ​ {{ :​pl:​dydaktyka:​pp:​dydactic-2019.zip |Examples}} prezentacja i komentarze - na wykładzie. 
 + 
 +---- 
 +  * 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]] 
 + 
 + 
 + 
 +---- 
 +Inne - ciekawe materiały do studiowania w ramach samodzielnej aktywności:​ 
 +  * A Prolog interpreter in JavaScript [[http://​tau-prolog.org/​|Tau-Prolog]] 
 +  * 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]] 
 +  *  The ECLiPSe Constraint Programming System [[http://​www.eclipseclp.org/​|ECLiPSe]] 
 +  * 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]] 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 +==== 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]] 
 + 
 +---- 
 +  * [[http://​home.agh.edu.pl/​~ligeza/​wiki/​|Homepage:​ A.Ligeza - Prolog x2 i inne]] 
 +  * [[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]] 
  
  
Linia 86: Linia 199:
   - [[.haskell:​lab-simple-funcs|Funkcje i listy]]   - [[.haskell:​lab-simple-funcs|Funkcje i listy]]
   - [[.haskell:​lab-more-funcs|Więcej funkcji]]   - [[.haskell:​lab-more-funcs|Więcej funkcji]]
-  - [[.haskell:​lab-types-monades|Typy i Monady]] +  - [[.haskell:​lab-monads-types|Typy i Monady]] 
-  - FIXME Interakcja z użytkownikiem +  - [[.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]]
pl/dydaktyka/pp/start.1527120687.txt.gz · ostatnio zmienione: 2019/06/27 15:54 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0