An Introduction to core ideas, characteristics and benefits of functional programming and their implementation within the so called ‘object – functional’ language Scala.
Leaving the widely known concepts of object oriented programming aside, the focus is directed on how to leverage Scala in order to perform the following topics (extract):
* Functions and Function types
* Lambdas and Closures
* Currying and partial Argument Application
* Algebraic datatypes and Pattern matching
* Higher Order Functions
* Composition and Combinators