Get Programming with Scala is a fast-paced introduction to the Scala language, covering both Scala 2 and Scala 3. You’ll learn through lessons, quizzes, and hands-on projects that bring your new skills to life.
Clear explanations make Scala’s features and abstractions easy to understand. As you go, you’ll learn to write familiar object-oriented code in Scala and also discover the possibilities of functional programming.
I encountered Scala snippets when reading the book Functional and Reactive Domain modeling and felt like it had a rather powerful type system (I translated things to Elixir though so language was of little importance).