In college, the default language that the computer science department used was Java. OOP was king and still is in lots of places. However, recently there has been a new trend emerging; functional programming. Java introduced aspects of functional programming in Java 8.

My introduction to functional programming was in the language ML and Racket from the Coursera class, Programming Languages, taught by Dan Grossman. I highly recommend the course as a primer in functional programming and programming languages in general. I later took Functional Programming Principles in Scala on Coursera taught by the Martin Odersky, the designer of the Scala programming language. I enjoyed the simplicity, expressiveness, interoperability with Java, strong static typing, and of course its great support for functional programming.

I would like to continue to grow my knowledge of functional programming, category theory, functional program design and will be doing so with Scala.

2018-Jan-01