So, I decided to look at the current set of books on Scala. If you don't know Scala it is a hybrid OO/Functional JVM language.
Here are the books I found that are either in print or soon to be in print.
|Title||Author||Length||Publication Date or Amazon Rating|
|Programming In Scala||Odersky||852 pages||4.5 stars|
|Programming Scala||Wampler||448 pages||4.5 stars|
|Programming Scala||Subramanian||250 pages||4.0 stars|
|Beginning Scala||Pollak||320 pages||3.5 stars|
|Scala In Action||Raychaudhuri||525 pages||(fall 2011 9 of 14 chapters available)|
|Scala In Depth||Suereth||225 pages||(Winter 2011 8 of 11 chapters available)|
While book length is not a good predictor of quality its hard to see how you can cover a language like Scala in a short book. In particular "Scala In Depth" looks to be the shortest book!
Personally my approach to learning Scala was to put Subramanian's book on my right, Odersky's book on my right, and a Scala console in the middle. I then read the same chapter in each book, working through each and every example in the Scala console. This way I got the benefit of learning the same concept via the different wording of two top authors...and I forced myself to actually write some Scala.
For my next Scala reading I'll try Scala In Action simply based on past enjoyment of the "X In Action" books from Manning Press. None of them have ever let me down.
I should also mention two other related books:
"Seven Languages In Seven Weeks" by Bruce Tate (full disclosure: I'm interviewed in the book's chapter on Prolog)
"Programming Concurrency on the JVM" by Subramanian. While not strictly a Scala book it is still very interesting as it introduces Software Transactional Memory and Actors and shows how to use them in various jvm languages.