Goodreads helps you keep track of books you want to read.
Start by marking “Programming in Scala” as Want to Read:
Programming in Scala
Enlarge cover
Rate this book
Clear rating
Open Preview

Programming in Scala

4.18 of 5 stars 4.18  ·  rating details  ·  791 ratings  ·  53 reviews

Programming in Scala is the definitive book on Scala, the new language for the Java Platform that blends object-oriented and functional programming concepts into a unique and powerful tool for developers.

Coauthored by the designer of the Scala language, this authoritative book will teach you, one step at a time, the Scala language and the ideas behind it.

The book is

Hardcover, 736 pages
Published January 1st 2008 by Artima
more details... edit details

Friend Reviews

To see what your friends thought of this book, please sign up.

Reader Q&A

To ask other readers questions about Programming in Scala, please sign up.

Be the first to ask a question about Programming in Scala

Community Reviews

(showing 1-30 of 1,725)
filter  |  sort: default (?)  |  rating details
Woah. Amazing! This is a great book. Excellently written. Of course it couldn't be a great book if it weren't for the fact that Scala is a totally awesome language. When I was teaching myself Perl, I had to read the book (*the* Perl book, _Programming Perl_), two times in order to get it. It was just so different from any programming language I had previously known, that I just couldn't get it the first time. I knew pretty early on into the Scala book that I would have to read it twice, for the ...more
Rod Hilton
I've heard a lot of people refer to Programming in Scala as "dry" or "boring". I think this description is not accurate, and a more accurate description is "thorough".

Programming in Scala is not a book to get you up and running in Scala quickly, writing good Scala code as soon as possible. This book is about UNDERSTANDING Scala, and not just how to use it, but how it works internally, what aspects of it are merely syntax sugar, and what that sugar is converted to under the hood. It covers aspect
Nov 11, 2011 Andy rated it 5 of 5 stars
Shelves: tech
This is how a book about a programming language should be written. It gives you the basics, but also provides details that you should know to be effective and efficient using Scala. What makes the book really great is that it is useful even if you aren't planning on writing a line of Scala. There are a lot of good programming practices and patterns that are given in the book (both explicitly and implicitly).
Yamir Encarnacion
After completing about 40% of the book according to my Kindle for iPad this is what I have to say.

Things I love about the book:
(1) the Kindle for iPad edition was very well formatted (has a hyperlinked table of contents, hyperlinks throughout the book, chapters start on a new page, well formatted and easy to read code examples)

Things I like about the book:
(1) thorough (the book covers a lot of material)
(2) clearly written with no obvious typos/errors
(3) liked the way each chapter was organized.
Daniel Korzekwa

For those, who want to learn more about Scala, I'd like to recommend very good book, actually one of the best books I read this year. Despite the fact it's a technical book I would compare it to reading Harry Potter. Simple language, easy to understand, short chapters and can't stop reading it. Here is the link: Programming in Scala by Martin Odersky
Eric Casteleijn
Scala is probably the worst programming language I've had the misfortune to use. The syntax and the way the compiler works make it feel like a rushed experiment. This book either flaunts the flaws of the language, or jokingly dismisses them. If you're forced to program in Scala, don't buy this book. I hear "Scala for the Impatient." is better, but best of all just try to avoid it altogether.
Rahul Phulore
Still the best book to get into Scala. A few complaints:
1. A lot of it needs to updated to the current language version.
2. Some examples in the book are mentally taxing and drive attention away from the main topic.
3. Type classes deserve more attention.
4. Their should be a greater emphasis on language philosophy.
Jordan Howe
Jun 13, 2011 Jordan Howe is currently reading it  ·  review of another edition
Great book. Peppered of dry jokes. Like "now you are *literally a Scala expert. Footnote: *figuratively speaking".
Not a lot to say here, other than: not optional if you're a Scala developer!
Scala's a big language. Its concepts may be simple, but there's a lot to get your head around before you feel you can be productive in it. This book does manage to get some of the key concepts across. It is well-written, and should work great as a reference too. Obviously, it's dated, what with it being based on Scala 2.8 and not on the current version 2.11 (and the language spec and implementations don't seem to care about backward compatibility, unlike some other languages), so there's a bit o ...more
Ondřej Sýkora
A very nice book and probably the best source of information about the Scala language. It is very well written with a clean explanation of the important concepts and features of the language.

However, sometimes the authors get carried away and get into explaining basics of functional programming. This might be useful for folks that only used Java before, but it gets boring soon if you already know it. Moreover, while most of the examples are great, some of them look artificial and solve things th
Sebastian Gebski
Quite likely the best book on Scala - not really surprising as it was co-written by Martin Odersky - Scala creator. The book itself is veeery comprehensive and details - some sneak-peaks inside collections' internals are indeed very astonishing. It's also well structured (contrary to some other Scala books), so the learning curve is as filed as possible (for Scala - so it's still not trivial).

I like the examples as well - especially the large-scale ones that are perfect to illustrate the general
Sudeep Kulkarni
A book by co-authored by the creator of Scala, explores every tiny detail of the language in excruciating detail. Useful for both beginners and the experts. For beginners - serves as a wholesome guide to object-functional programming, and for the experts - serves as an excellent reference to the language.

The book assumes no prior knowledge of any programming language (though, if you want to learn Scala, chances are high that you have at least some experience with Java) and explains concepts from
Patrick Barker
What can I say about this, the creator wrote a great book on scala that is as deep as the language. I think Odersky's logic is flawless, and while its a lot of text, it is the most comprehensive approach to the language.
Jyri-matti Lähteenmäki
Great introductory book to Scala. Even though it also explains many advanced features, it still manages to stay easy to follow. I would recommend this also to those not yet familiar with functional programming or other "new" stuff.
One of the best programming book I have read. Very mindful progression. Borrows from the SICP which is great. Even very good humour at times. Takes you from beginner to journeyman.
Alessandro Pellizzari
La prima parte del libro, che spiega le basi del linguaggio, è molto ben fatta. Nella seconda parte, dove approfondisce gli aspetti più funzionali e personalizzabili, diventa più ostico, e a volte estremamente complicato, ma forse è più colpa del linguaggio che del libro.
Nella terza parte, la più corposa, spiega come sono implementate le librerie standard di classi e oggetti, ed è una via di mezzo tra la curiosità, il ripasso e l'approfondimento.
Nikolay Hodyunya
With 800+ pages this is just overview of the language, but never complete guide.
Trung Nguyen
A very easy to understand book on Scala.
Mar 28, 2014 Ram added it
This review has been hidden because it contains spoilers. To view it, click here.
Vehbi Sinan
One of the best practical books which I've ever read. Gives the full stack of information on the subject matter, relates concepts to each other to help comprehension, and is fun to read.

Although it is verbose sometimes, it is clearly "not for dummies".

The only issue to me is the clear differences of style among chapters. It is not a big issue though. In fact, it may be entertaining for some readers.

Highly recommended, even for people who don't plan to write a single line of Scala code.
Thorough explanation of language features by the primary author of the language.

For learning a new programming language, I find useful:
- the online documentation
- a project to develop
- some exercises
- a book

For scala, I had a toy project to play with, the online doc is pretty good, the scala koans help explore things, and the REPL is highly useful in terms of trying things out.

All I needed was a good book, and this is the best scala book I've worked through so far.
Very well-edited, wide-reaching overview of the Scala programming language. Includes an excellent overview of the collections API, some implementation details about the standard library, and clear, in-depth use cases and scenarios demonstrating concepts introduced. Disappointingly, doesn't talk about Scala Streams. Also, (obviously) doesn't cover Scala additions/modifications/deprecations beyond 2.8.
Comprehensive, certainly. Presents Scala as deceptively simple, which if anything only serves to highlight the glaring gap between the language's goals and its actual implementations.
Web Worms
The classic introduction into Scala by its author. Like many good books on programming languages it is at the same time an introduction into the language and into a specific way of thinking that the language embodies. If you are into strongly typed functional programming and are afraid to go straight all the way to Haskell, this is an excellent starting point.
Дмитрий Лобанов
The most scientific book about programming that I'd ever read

Lower bounds, first-class functions, tail-recursion, reverse functions and many other computer science and mathematics terms

Thanks, Martin
Harit Himanshu
pretty extensive and good read
Very information-intensive book that covers all aspects of Scala language. If you go through all examples and tutorials, you know enough to start working in Scala immediately. Unfortunately are some examples bit outdated and one has to hack them to work with the most recent version of language.
This review has been hidden because it contains spoilers. To view it, click here.
I've finished a first pass through the book, enough to get a good grasp of language fundamentals. There are some lengthly and in-depth examples that I plan to work through including ones on parser combinators and functional UIs.

« previous 1 3 4 5 6 7 8 9 57 58 next »
There are no discussion topics on this book yet. Be the first to start one »
  • Scala in Depth
  • Functional Programming in Scala
  • Java Concurrency in Practice
  • Programming Clojure
  • Programming Scala: Scalability = Functional Programming + Objects
  • Real World Haskell: Code You Can Believe In
  • Learn You a Haskell for Great Good!
  • The Joy of Clojure
  • Scala for the Impatient
  • Effective Java Programming Language Guide
  • Seven Languages in Seven Weeks
  • Land of LISP: Learn to Program in LISP, One Game at a Time!
  • Programming Erlang
  • Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions
  • Purely Functional Data Structures
  • The Ruby Programming Language
  • Domain-Driven Design: Tackling Complexity in the Heart of Software
  • Spring in Action

Goodreads is hiring!

If you like books and love to build cool products, we may be looking for you.
Learn more »
Scala By Example ECOOP 2004 - Object-Oriented Programming: 18th European Conference, Oslo, Norway, June 14-18, 2004, Proceedings (Lecture Notes in Computer Science) Ecoop 2004- Obgect-Oriented Programming: 18th European Conference, Oslo, Norway, June 2004, Proceedings Scala スケーラブルプログラミング: コンセプト & コーディング ECOOP 2004 - Object-Oriented Programming: 18th European Conference, Oslo, Norway, June 14-18, 2004 Proceedings

Share This Book

“You may be wondering why you can't access the elements of a tuple like the elements of a list, for example, with "pair(0)". The reason is that a list's apply method always returns the same type, but each element of a tuple may be a different type: _1 can have one result type, _2 another, and so on.” 0 likes
“The line in question ends in a word that would not be legal as the end of a statement, such as a period or an infix operator. The next line begins with a word that cannot start a statement. The line ends while inside parentheses (...) or brackets [...], because these cannot contain multiple statements anyway.” 0 likes
More quotes…