Haskell: Lecture notes and assignments
Offered By: University of Pennsylvania via Independent
Course Description
Overview
Syllabus
All homework assignments should emerge creatively from the Style guidelines. Homework is due each Monday by the start of class.
HW submission site / HW submission instructions
-
Week 1 (14 January): Introduction to Haskell ( html, lhs )
- Homework 1: due Monday, 21 January.
-
Week 2 (21 January): Algebraic Data Types ( html, lhs )
- Homework 2: due Monday, 28 January. [ error.log, sample.log, Log.hs ]
-
Week 3 (28 January): Recursion patterns, polymorphism, and the Prelude ( html, lhs )
- Homework 3: due Monday, 4 February.
-
Week 4 (4 February): Higher-order programming and type inference ( html, lhs )
- Homework 4: due Monday, 11 February.
-
Week 5 (11 February): More polymorphism and type classes ( html, lhs )
- Homework 5: due Monday, 18 February. [ ExprT.hs, Parser.hs, StackVM.hs ]
-
Week 6 (18 February): Lazy evaluation ( html, lhs )
- Homework 6: due Monday, 25 February.
-
Week 7 (25 February): Folds and monoids ( html, lhs )
- Homework 7: due Monday, 11 March. [ Editor.hs, Buffer.hs, Sized.hs, StringBuffer.hs, StringBufEditor.hs, carol.txt ]
-
Week 8 (11 March): IO ( html, lhs )
- Homework 8: due Monday, 18 March. [ Employee.hs, company.txt ]
-
Week 9 (18 March): Functors ( html, lhs )
- Homework 9: due never (no HW this week).
-
Week 10 (25 March): Applicative functors (part 1) ( html, lhs )
- Homework 10: due Monday, 1 April. [ AParser.hs ]
-
Week 11 (1 April): Applicative functors (part 2) ( html, lhs )
- Homework 11: due Monday, 8 April. [ AParser.hs, SExpr.hs ]
-
Week 12 (8 April): Monads ( html, lhs )
- Homework 12: due Monday, 15 April. [ Risk.hs ]
Tags
Related Courses
Type-Driven Development: Designing with TypesPluralsight Exploring Common Algebraic Data Types Used in Functional Programming
egghead.io The Evolution of Object-Oriented Programming - Modern Concepts and Techniques
ChariotSolutions via YouTube Busting the Func'ing Jargon
NDC Conferences via YouTube Functional Patterns for the Object Oriented
NDC Conferences via YouTube