We start with a look at functional styles of programming in JavaScript. The JavaScript community has been pushing for more pure functions, recursion, and use of FP in general, so we take some time to practice with practical examples. In the next two modules we continue to work with JavaScript but look at how we can better avoid side-effects in our code, and work with functional versions of some popular data structures.
In the last two modules we explore purely functional programming in a new language, PureScript. Using PureScript, we are able to take advantage of the language-level checks and compiler errors that a purely functional language provides. We explore the possibilities of higher order and first-class functions, and familiarize ourselves with the basics of function currying.