aspose file tools*
The moose likes Scala and the fly likes Functional Programming in Scala Question Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Languages » Scala
Bookmark "Functional Programming in Scala Question" Watch "Functional Programming in Scala Question" New topic

Functional Programming in Scala Question

Michael Quirk

Joined: Feb 23, 2011
Posts: 8

From looking at the chapter titles of the book, I wanted to know if this is targeted more toward a Java programmer, a Haskell programmer or both? The titles with 'monad' and 'monoid' in them prompted my curiosity.

Thank you.
Paul Chiusano

Joined: Feb 06, 2013
Posts: 9
Hi Michael,

I would not say the book is targeted at Haskell programmers, we are definitely trying to make the work for someone coming from a Java background, without much or any prior exposure to functional programming. Here's what we say in the Preface regarding the audience:

This book is intended for readers with at least a little bit of programming experience. We had a particular kind of reader in mind while writing the book--an intermediate-level Java or C programmer who is curious about functional programming. But we believe this book is well suited for programmers coming from any language, at any level of experience.

Prior expertise is not so important as motivation and curiosity. Functional programming is a lot of fun, but it's a challenging topic. It may even be especially challenging for the most experienced programmers, because it can be such a different way of thinking than they might be used to. No matter how long you have been programming, you must come prepared to be a beginner once again.

This book does not require any prior experience with Scala, but we won't spend a lot of time and space discussing Scala's syntax and language features. Instead we will introduce them as we go, with a minimum of ceremony, mostly as a consequence of covering other material. These minimal introductions to Scala should be enough to get you started with the exercises. If you have further questions about the Scala language, you should supplement your reading with another book on Scala[1] or look up specific questions in the Scala language specification.[2]


Part 1 of the book is just us explaining what FP is, and then walking through the basic techniques of FP. We try to motivate each technique for people who might be coming from an imperative programming background.

Hope this answer helps!
Campbell Ritchie

Joined: Oct 13, 2005
Posts: 38363
That does help. The last FP I tried was in Oz, about 6 years ago. It would be interesting to have an introduction.

Oz supports constraint programming, too, so one of our number produced a timetable application in Oz, which occupied surprisingly little space on disc, and ran very fast. But that was constraint programming.
Consider Paul's rocket mass heater.
subject: Functional Programming in Scala Question