Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Previous revision
Last revision Both sides next revision
courses:fup:lectures:start [2020/05/29 08:44]
courses:fup:lectures:start [2024/02/12 16:39]
heimnikl [Lectures]
Line 1: Line 1:
 +====== Lectures ======
  
 +^ Date ^ Title ^ Slides ^ Other ^ 
 +|Feb 21 (23)| 1. Introduction | [[https://​drive.google.com/​file/​d/​1EVzyZTqGDexNagV-5RMPXmqs3umNINVK/​view?​usp=drive_link|Slides]] | [[https://​drive.google.com/​file/​d/​1I3uoTART5UmWsWLRR_bYuNrzolTl2cO5/​view?​usp=share_link|Log]]|
 +
 +/*
 +|Feb 28 (Mar 2)| 2. Lists and trees | [[https://​drive.google.com/​file/​d/​1IXFuHHxQf7eXTuCNCcAYHsaCEivhg3GV/​view?​usp=share_link|Slides]] | [[https://​drive.google.com/​file/​d/​1IDuVo_v3MZlsDBBr3Z8LddKUrf1aZCAI/​view?​usp=share_link|Log]] |
 +|Mar 7 (9)| 3. Higher order functions | [[https://​drive.google.com/​file/​d/​1OzBJAsBwnQZr7RkGx0h3Jb4qy-Z3HavA/​view?​usp=sharing|Slides]]|[[https://​drive.google.com/​file/​d/​1IYS0znPmoypQXgc07lgQ8VB_N02i6x84/​view?​usp=share_link|Log]] |
 +|Mar 14 (16)| 4. Pattern matching and immutability |[[https://​drive.google.com/​file/​d/​1ZY2AVvNPCot57qER7uDE7ltV9qJZJk0K/​view?​usp=share_link|Slides]] | [[https://​drive.google.com/​file/​d/​1Knv08uCMwhSj80QnBsUcS7PSY5lcp6xS/​view?​usp=share_link|Log]] [[https://​drive.google.com/​file/​d/​1Ks-pKwE0obYrgfZcTdnnxDmGe4bRU2yV/​view?​usp=share_link|RA-Lists]]|
 +|Mar 21 (23)| 5. Streams and macros| [[https://​drive.google.com/​file/​d/​1e4t3LqTY9d-u1ZwgwJ0TH9tXm6KXwF4C/​view?​usp=share_link|Slides]] | [[https://​drive.google.com/​file/​d/​1UAresm3EyRWk7FrjqvZzXuppo5iwc0SW/​view?​usp=share_link|Log]]|
 +|Mar 28 (30)| 6. Mutable data and interpreters| [[https://​drive.google.com/​file/​d/​1jilYzpQ799q1rnUu-IIQt_PvBu8Bg5Xq/​view?​usp=share_link|Slides]] |[[https://​drive.google.com/​file/​d/​1epQDWXJvukOP0ioXhzEe8DrHZzCPrY_F/​view?​usp=share_link|Log]] [[https://​drive.google.com/​file/​d/​1tOoLV3a309ooXBvtSfJwHAtlSYhGLHBK/​view?​usp=share_link|Brainf*ck]]| ​
 +|Apr 4 (6)| 7. Lambda calculus| [[https://​drive.google.com/​file/​d/​1jwIDXhcFlJn_tCruWL4McuSMwvQz7CLI/​view?​usp=share_link|Slides]] | |
 +|Apr 11 (13)| 8. Introduction to Haskell | [[https://​drive.google.com/​file/​d/​1k-QVfp_0udHb_lc1pqv-8Ek6tYuwqh_e/​view?​usp=share_link|Slides]] |[[https://​drive.google.com/​file/​d/​1k39biz-izxxfGYEhNm3aS92VVtT3Lal1/​view?​usp=share_link|Log]] [[https://​drive.google.com/​file/​d/​1k2-z3_jvRn3sXuMykcCXY7bd7mRSq02a/​view?​usp=share_link|jarnik.hs]] [[https://​drive.google.com/​file/​d/​1k4e0aqv6LmNXk3vKON5tkKP96_DPNapl/​view?​usp=share_link|hie.yaml]]|
 +|Apr 18 (20)| 9. Haskell types | [[https://​drive.google.com/​file/​d/​1k5ZHweh1JAY08zLP0uT9kIK3sIhmEk87/​view?​usp=share_link|Slides]] | [[https://​drive.google.com/​file/​d/​1kanHkc8uvf1LTUrdRo5c-E-s18h4vbHi/​view?​usp=share_link|Log]] |
 +|Apr 25 (27)| 10. Type classes | [[https://​drive.google.com/​file/​d/​1lbXeKmmDN-sDpJvhLXUTrow-i0UuUxvQ/​view?​usp=share_link|Slides]] | [[https://​drive.google.com/​file/​d/​1li16dAsucVga4aSc52IE8VkFW9bD6YH7/​view?​usp=share_link|Log]] [[https://​drive.google.com/​file/​d/​1liDF4v_4VWiWJ5lZabDXEwtDYdfAlqoG/​view?​usp=share_link|Json.hs]]|
 +|May 2 (11)| 11. Monads and Haskell IO | [[https://​drive.google.com/​file/​d/​1ljQ0EvMrXKZO_1D1g4TIU1D8zNGuc41Y/​view?​usp=share_link|Slides]] | [[https://​drive.google.com/​file/​d/​1ltpDH4WXuw9d0UEWrZr3kEoIAJP23fo_/​view?​usp=share_link|Log]]|
 +|May 16 (18)| 12. Monadic parsing | [[https://​drive.google.com/​file/​d/​10Q_PR9JCzXxyFCkmsCpgaAQSK4h3OH5r/​view?​usp=sharing|Slides]] | [[https://​drive.google.com/​file/​d/​10dN63t99pI_Xu905WgeulX5Xvq459t-j/​view?​usp=sharing|Log]] [[https://​drive.google.com/​file/​d/​10gFqoy9qo-SMVQIDWL6ydqpXEqMSxS5y/​view?​usp=sharing|Parser.hs]]|
 +|May 23 (25)| 13. State monad |[[https://​drive.google.com/​file/​d/​1mT6ZXcImty3m8yuKpkKjaFudndOF4SXs/​view?​usp=share_link|Slides]] | [[https://​drive.google.com/​file/​d/​10sKy1mWNhTHHFOPC-gUgT3N-xPhhaiw1/​view?​usp=sharing|Log]] [[https://​drive.google.com/​file/​d/​10qS7Ruc03wi1Jeafxo6BhY_GfJXeBzIX/​view?​usp=sharing|State.hs]] [[https://​drive.google.com/​file/​d/​10zzr7mKQh7lzBDqGW0jR8WF_9FkWWmYr/​view?​usp=sharing|brainfuck.zip]] [[https://​drive.google.com/​file/​d/​11DT5VaoTGkqgCTGNK6fCty5x0xKcRxCf/​view?​usp=sharing|IOState.hs]] |
 +*/
 +
 +/*
 +[[https://​drive.google.com/​file/​d/​1tOoLV3a309ooXBvtSfJwHAtlSYhGLHBK/​view?​usp=sharing|brainfuck.rkt]]
 +
 +|May 10 (12)| 13. State monad | [[https://​drive.google.com/​file/​d/​10ixc02ea2kwZ848bjw3mZ7nwmTQCR7At/​view?​usp=sharing|Slides]] | [[https://​drive.google.com/​file/​d/​10sKy1mWNhTHHFOPC-gUgT3N-xPhhaiw1/​view?​usp=sharing|Log]] [[https://​drive.google.com/​file/​d/​10qS7Ruc03wi1Jeafxo6BhY_GfJXeBzIX/​view?​usp=sharing|State.hs]] [[https://​drive.google.com/​file/​d/​10zzr7mKQh7lzBDqGW0jR8WF_9FkWWmYr/​view?​usp=sharing|brainfuck.zip]] [[https://​drive.google.com/​file/​d/​11DT5VaoTGkqgCTGNK6fCty5x0xKcRxCf/​view?​usp=sharing|IOState.hs]]|
 +|May 17 (19)| 14. Monoids and Foldables | [[https://​drive.google.com/​file/​d/​11Ixuin_GfML8sXGkm8q2B8lOIP7eSGqr/​view?​usp=sharing|Slides]]| [[https://​drive.google.com/​file/​d/​11JDdu4w-8FA5Kh4j_v2_s4hiFNpKDChG/​view?​usp=sharing|Log]] [[https://​drive.google.com/​file/​d/​11KEollJ5KAcIgXA4hf4fRb9bA850oxG5/​view?​usp=sharing|FUP-hw.csv]]|
 +*/
 +
 +====== Lecture notes ======
 +
 +As we proceed through the lectures, I will try to write down lecture notes so that you have most of the course material in a single place. However, I am unsure if I will manage to be on time with them due to other obligations. The lecture notes are available at the following ​
 +[[https://​xhorcik.gitlab.io/​fup-lecture-notes/​|website]].
 +
 +====== Old recorded lectures ======
 +
 +Old recorded lectures from 2021 can be found [[https://​cw.fel.cvut.cz/​b202/​courses/​fup/​lectures/​start|here]].
 +
 +====== Other resources ======
 +
 +[1] Harold Abelson and Gerald Jay Sussman and Julie Sussman: Structure and Interpretation of Computer Programs, MIT Press, 1996.
 +https://​mitpress.mit.edu/​sites/​default/​files/​sicp/​full-text/​book/​book.html ​
 +
 +[2] R. Kent Dybvig: The Scheme Programming Language, Fourth Edition, MIT Press, 2009.
 +https://​www.scheme.com/​tspl4/​
 +
 +[3] Raul Rojas: A Tutorial Introduction to the Lambda Calculus. http://​www.inf.fu-berlin.de/​lehre/​WS03/​alpi/​lambda.pdf
 +
 +[4] Greg Michaelson: An Introduction to Functional Programming Through Lambda Calculus, Dover edition, 2011. 
 +
 +[5] Graham Hutton: Programming in Haskell, Cambridge University Press, 2016.
 +
 +Functors, Applicatives,​ and Monads In Pictures: https://​adit.io/​posts/​2013-04-17-functors,​_applicatives,​_and_monads_in_pictures.html
 +
 +Lexical scopes: https://​docs.racket-lang.org/​guide/​eval.html
 +
 +Lazy evaluation: https://​sites.ualberta.ca/​~jhoover/​325/​CourseNotes/​section/​Scheme_3.htm ​
 +
 +Streams: https://​mitpress.mit.edu/​sites/​default/​files/​sicp/​full-text/​book/​book-Z-H-24.html
 +
 +Side effects in scheme: https://​courses.cs.washington.edu/​courses/​cse341/​05au/​lectures/​scheme-side-effects.html
 +
 +"​Objects"​ in scheme: http://​sarabander.github.io/​sicp/​html/​3_002e1.xhtml
 +
 +All sorts of materials on Haskell: https://​haskell.org/​documentation/​
 +
 +Creating Haskell types: http://​learnyouahaskell.com/​making-our-own-types-and-typeclasses
 +
 +Haskell pattern matching: https://​www.haskell.org/​tutorial/​patterns.html
 +
 +Haskell modules: https://​www.haskell.org/​tutorial/​modules.html
 +
 +Haskell IO: https://​wiki.haskell.org/​Introduction_to_IO
 +
 +Haskell IO: https://​wiki.haskell.org/​IO_inside
 +
 +Haskell Monads: https://​www.schoolofhaskell.com/​user/​bartosz/​basics-of-haskell/​10_Error_Handling
 +
 +Haskell Functors: http://​learnyouahaskell.com/​functors-applicative-functors-and-monoids
courses/fup/lectures/start.txt · Last modified: 2024/02/13 21:12 by heimnikl