スイス連邦工科大学ローザンヌ校（École Polytechnique Fédérale de Lausanne） による Functional Programming Principles in Scala (Scala 2 version) の受講者のレビューおよびフィードバック
In this course you will discover the elements of the functional programming style and learn how to apply them usefully in your daily programming tasks, such as modeling business domains or implementing business logic. You will also develop a solid foundation for reasoning about functional programs, by touching upon proofs of invariants and the tracing of execution symbolically.
The course is hands on; most units introduce short programs that serve as illustrations of important concepts and invite you to play with them, modifying and improving them. The course is complemented by a series programming projects as homework assignments.