Introduction to Functional Programming – ScheduleTDA555 / DIT440, LP1 2017
Home | Schedule | Labs | Lectures | Exercises | Exam | About | FAQFire | WaitList | Group | TimeEdit | YouTube | Links
Introduction to Functional Programming – ScheduleTDA555 / DIT440, LP1 2017
Home | Schedule | Labs | Lectures | Exercises | Exam | About | FAQFire | WaitList | Group | TimeEdit | YouTube | Links
Week 1
Tuesday, Aug 29 (13-15 in HB1)
Lecture "Cases and Recursion"
Video 1
Video 2
Slides: slides-2015.pdf
Code: 1A.hs, Coe-2015.hs, Work-2015.hs
Friday, Sep 1 (8-10 in HB1)
Lecture Lists and Data Types Video 1(Lists)
Bonus Video (Primes)
Video 2(Datatypes)
Slides: slides-2015.pdf
Code: 1B-2017.hs, 1B-listcomp.hs

Week 2
Monday, Sep 4 (13-16 in Idéläran)
Exercises: "Recursion and Datatypes"
Tuesday, Sep 5 (13-15 in HB1)
Lecture Data Types (Continued) and Lists In 2017 we will postpone the discussion of recursive data types.
Video 1
Video 2
Slides: Recursive Data Types Intro.pptx, slides.pdf
Code: 2A-2017-lists.hs, 2A-2017.hs
Friday, Sep 8 (8-10 in HB1)
Lecture "More Lists"
Video 1 (Lists)
Video 2 (QuickCheck)
Video 3 (Reverse)
Code: 2B-2017.hs, ListComp.hs, Lists.hs, Work1.hs, Work2.hs

Week 3
Monday, Sep 11 (13-16 in Idéläran)
Exercises: "Lists and List Comprehensions"
Tuesday, Sep 12 (13-15 in HB1)
Lecture "More Lists" Continued
Video 1 (Dos and Don'ts for Bool)
Video 2 (zip and !!)
Video 3 (Lists of lists)
Code: 3A-lists.hs
Friday, Sep 15 (8-10 in HB1)
Lecture "IO Instructions"
Video 1 (Intro to IO, 2016)
Video 2 (Example: Hangman)
Slides: slides.pdf
Code: 3B.hs, ExampleIO.hs, hangman.hs

Week 4
Monday, Sep 18 (13-16 in Idéläran)
Exercises: "IO and Testing"
Tuesday, Sep 19 (13-15 in HB1)
Lecture "Test Data Generation"
Video 1 (2016)
Video 2 (2016)

Slides: 04A.pdf
Code: 4A-2016.hs, 4A-2017.hs
Friday, Sep 22 (8-10 in HB1)
Lecture "Higher-Order Functions"
Video 1 (2017)
Video 2 (2017)

Slides: slides(2017).pdf
Code: 4B-2017.hs, HigherOrderFunctions.hs, Puzzle.hs

Week 5
Monday, Sep 25 (13-16 in Idéläran)
Exercises: "Higher-Order Functions and Test Data Generation"
Tuesday, Sep 26 (13-15 in HB1)
Higher-order functions and Intro to Recursive Data Types
Video 1 (2017)
Video 2 (2017)


Code: 5A-HO-2017.hs, 5A-RecursiveData.hs

Friday, Sep 29 (08-10 in HB1)
Lecture "Recursive Data Types"
Video 1 (2016)
Video 2 (2016)
Video 3 (2016)
Video 4 (2017)
Slides: slides.pdf
Code: 5B1-2016.hs, 5B1-2017.hs, 5B2-2016.hs, 5B2-2017.hs

Week 6
Monday, Oct 2 (13-16 in Idéläran)
Exercises: "Recursive Data Types"
Tuesday, Oct 3 (13-15 in HB1)
Lecture "More Recursive Data Types"
Video 1 (2016)
Video 2 (2017)

Slides: slides.pdf
Code: 6A.hs
Wednesday, Oct 4 (10-12 in KE)
(2017) Guest Lecture: "Life is Too Short for Imperative Programming"
  • By John Hughes (Chalmers and Quviq AB)
    Slides: John2012.pdf, John2012.ppt

  • Week 7
    Monday, Oct 9 (13-16 in Idéläran)
    Exercises: "Old Exam Questions".
    Tuesday, Oct 10 (13-15 in HB1)
    Lecture "Data Structures"
    Video 1 (2017)
    Video 2 (2016)

    Slides: slides-2015.pdf, slides-2017.pdf
    Code: Queue.hs, SlowQueue.hs, Table-2016.hs, Table.hs
    Wednesday, Oct 11 (10-12 in KE)
    Lecture Bonus lecture (not examined): Monads and the secret of Do-notation
    Video 1 (2017)
    Video 2 (2017)
    Video 3 (2017)
    Video 4 (2017)

    Slides: Monads.pdf
    Code: MonadExamples.hs, Parsing.hs, UsingParsing-2017.hs

    Week 8
    Tuesday, Oct 17 (13-15 in HB1)
    Lecture "Course Summary"
    We will also go through some old exams.
    Sample exam (part 1) in the new format for 2017

    Slides: Summary.pdf
    Code: Examples2017.hs