Why learn Scala? You don't need to be a data scientist or distributed computing expert to appreciate this object-oriented functional programming language This practical book provides a comprehensive yet approachable introduction to the language complete with syntax diagrams examples & exercises You'll start with Scala's core types & syntax before diving into higher-order functions & immutable data structures Author Jason Swartz demonstrates why Scala's concise & expressive syntax make it an ideal language for Ruby or Python developers who want to improve their craft while its type safety & performance ensures that it's stable & fast enough for any application Learn about the core data types literals values & variables Discover how to think & write in expressions the foundation for Scala's syntax Write higher-order functions that accept or return other functions Become familiar with immutable data structures & easily transform them with type-safe & declarative operations Create custom infix operators to simplify existing operations or even to start your own domain-specific language Build classes that compose one or more traits for full reusability or create new functionality by mixing them in at instantiation