
IT5100A
Course notes for students enrolled in IT5100A—Industry Readiness: Typed Functional Programming in NUS SoC.
Foo Yong Qi | yongqi@nus.edu.sg |
About IT5100A
Typed functional programming is becoming more widely adopted in industry, as can be seen in the success of a number of advanced programming languages, such as OCaml, Haskell and Scala 3. These advanced languages offer a range of expressive features to allow robust, reusable and high-performing software codes to be safely and rapidly developed. This course will cover key programming techniques of typed functional programming that are becoming widely adopted, such as strong typing, code composition and abstraction, effect handlers, and safe techniques for asynchronous and concurrent programming.
Release History
2024
- 26 Oct: Writeup on Concurrent and Parallel Programming, excluding exercises
- 13 Oct: Writeup on Monads, excluding exercises
- 10 Oct: Writeup on the existential typeclass pattern
- 28 Sep:
- Additional writeups and bug fixes in the existing chapters
- Bug fixes in operator highlighting in code blocks in light modes.
- Recap on first-class functions and lambda calculus.
- Solutions to exercises for the first four chapters.
- 26 Sep: The first draft of these notes have been released with the first four chapters completed.