Scala for the Impatient Third Edition

Cay Horstmann

“Currently the best compact introduction to Scala” —Martin Odersky

“The book is a joy to read. Probably the most concise reference for Scala available on the market, this deserves to be on every programmers bookshelf”—James Sugrue

What you get:

What you don't get:

Available as DRM-free e-book and/or printed book

Support Materials

Gibberish in the book? Check the errata, or contribute a new bug report.

Here is the source code for the examples. Unzip and load each chapter directory as a project into IntelliJ or Visual Studio Code.

Because they keep changing, Scala installation instructions are here instead of in the printed book.

What? No solution to the exercises? I am not putting them up because many readers enjoy working them out themselves. If you google for "horstmann scala impatient solutions", you'll find blogs and github sites of fellow readers that might (give you inspiration|spoil the fun).

Table of Contents

The [AL][1-3] refer to Martin Odersky's Scala levels.

  1. The Basics (A1)
  2. Control Structures and Functions (A1)
  3. Arrays (A1)
  4. Maps and Tuples (A1)
  5. Classes (A1)
  6. Objects (A1)
  7. Packages and Imports (A1)
  8. Inheritance (A1)
  9. Files and Regular Expressions (A1)
  10. Traits (L1)
  11. Operators (L1)
  12. Higher-Order Functions (L1)
  13. Collections (A2)
  14. Pattern Matching (A2)
  15. Annotations (A2)
  16. Futures (A2)
  17. Type Parameters (L2)
  18. Advanced Types  (L2)
  19. Contextual Abstractions (L3)
  20. Type-Level Programming (L3)

Earlier Editions