This week we will be taking a deeper look at functional programming. In particular, we will formally define a pure function, referential transparency, the substitution model, and higher-order functions. We will also look at monomorphic versus polymorphic functions and equational reasoning. In addition, we will explore functional data structures, pattern matching, recursion over lists, and sharing.
There are no additional tasks this week