A little while ago I designed and delivered a short workshop with the goal of introducing the Scala programming language to Developers from a Java background.
As far as programming languages go, Scala is in my top 5. The designers of Scala saw the value in the Functional Programming (FP) paradigm and looked to marry it with the Object Orientated (OO) paradigm from day one. This approach has only recently been adopted in Java 8 through the Streams API.
So if Java’s going functional, why learn Scala at all? There’s a lot of advanced language features that Scala offers that Java does not. Scala is also completely interoperable with your Java projects. Not only that, but Scala is a nice entry point for some of the “purer” functional languages such as Haskell and Erlang.
Think you found a bug in the code? Feel free to raise a Github issue. Have questions? Feel free to leave a comment below!