From Imperative to Functional Programming

Whether one likes it or not, there's now denying that there's currently a huge trend toward Functional Programming. It started with the Scala language that bridged Object-Oriented Programming and Functional Programming. But there's also the Clojure languages that fully embraces FP. And even since Java 8, features of FP have started to creep in. However, most codebases in so-called OOP languages are imperative. This focus is all about the migration from one type of programmning to another.

Scala vs. Kotlin

Scala and Kotlin are both JVM languages. Scala was incepted earlier, and got some traction thanks to developers interested in Functional Programming on the JVM. Kotlin is more like the cool kid on the block, but has recently seen tremendous success, thanks to both Google and Pivotal supporting it respectively on Android and with the Spring framework. Scala is more powerful and academic, while Kotlin is more pragmatic. This focus aims to compare both languages in specific areas.