3 czerwca 2008
Mateusz Styrczula1
Notatki do wykładów2
Streszczenie
Haskell, ewaluatory wyrażeń, monady, klasy typów, semantyki denotacyjne, semantyki operacyjne, transformatory monad, leniwość, funkcje monolityczne, Strachey, funkcje inkre-mentacyjne, predykaty, baba-w-babie, łamigłówki, drzewa czerwono-czarne, teorie modeli, dowody indukcyjne, metodologie programowania, Wadler, cukierki o smaku kaszanki, sinusy, Tarski, cyklisty, generatory, polimorfizm, algebry, modele, formuły, predykaty ...
TYzeba kształtować młode umysły. Gdybyśmy z Haskellem zaczynali (podobnie jak chcą z nauką Religii) w przedszkolu, to polska informatyka wyglądałaby zupełnie inaczej.
ToMasz Wierzbicki
To co się dzieje w komputerze, to nie „magia”. John von Neumann - program i dane w jednej pamięci operacyjnej. Opowieść o metodologiach programowania, podział języków na te „niskiego poziomu” i „wysokiego poziomu”. A C+-1— jaki jest, każdy widzi. Leniwość, gorliwość, strukturalizacja kodu, goto jest złe, instrukcja przypisania jest do bani, człowiek potrafi zapamiętać 2.5 bita informacji... Komputery dobrze radzą sobie z dużą ilością takich samych (bądź bardzo podobnych) „obiektów”, a ludzie dobrze radzą sobie z małą ilością „obiektów” (ale obiekty te mogą być zupełnie różne od siebie - krzesło, samolot, obiad...). Wstępik do HaskelTa. Chcemy pisać specyfikacje a nie „kodować”.
1. http://kno.ii.uni.wroc.pl/ii/ - (kształcenie na odległość...) - Moodle - Programowanie -Strachey
2. Rekursja strukturalna...
3. „List comprehensions”:
• [e | True] = [e]
• [e | b, q] = if b then [e | q] else []
1
rozdziały oznaczone „(TWi)” są autorstwa ToMasza Wierzbickiego i pochodzą z udostępnionych przez niego notatek
a w zasadzie luźne myśli, hasła i zlepki dziwnych symboli...