We got a good glimpse of the highly concise and expressive nature of Scala using a few practical examples in this chapter. The short examples serve as a whirlwind tour of several features, including functional style, effortless concurrency, use of collections, fancy iterators, programming with immutability, and using tuples. We learned about defining variables and values, about the static type checking, and about type inference. Above all, we also saw how concise and expressive Scala is.
While we quickly touched on a number of things, we have the rest of the book to dive into each of those, and more, in depth. Let’s get started with ways to compile and run Scala code in the next chapter.