In this chapter, we discussed some Scala Basics and how to use the Scala app to execute standalone applications. We also discussed what is Scala REPL and how to access it.
We discussed a couple of Scala Functional Programming concepts with some simple examples, and gave an introduction to the Scala Collection API.
We discussed Scala FP Design Patterns such as Monoid, Functor, and Monad, and finally discussed a couple of Scala Source Code Monads.
Finally, we explored one of the greatest features of Scala—Traits. Java does not have a similar programming construct. We also explored linearization rules with one simple example.
In the next chapter, we will discuss the Scala asynchronous programming API.