Shop now Learn more Shop now Shop Clothing clo_fly_aw15_NA_shoes Shop All Shop All Amazon Fashion Cloud Drive Photos Shop now Learn More Shop now Shop Fire HD 6 Shop Kindle Paperwhite Shop now Shop Now Shop now
Start reading Real World Haskell: Code You Can Believe In on your Kindle in under a minute. Don't have a Kindle? Get your Kindle here or start reading now with a free Kindle Reading App.

Deliver to your Kindle or other device


Try it free

Sample the beginning of this book for free

Deliver to your Kindle or other device

Sorry, this item is not available in
Image not available for
Image not available

Real World Haskell: Code You Can Believe In [Kindle Edition]

Bryan O'Sullivan
3.8 out of 5 stars  See all reviews (12 customer reviews)

Print List Price: £33.50
Kindle Price: £20.67 includes VAT* & free wireless delivery via Amazon Whispernet
You Save: £12.83 (38%)
* Unlike print books, digital books are subject to VAT.

Free Kindle Reading App Anybody can read Kindle books—even without a Kindle device—with the FREE Kindle app for smartphones, tablets and computers.

To get the free app, enter your e-mail address or mobile phone number.


Amazon Price New from Used from
Kindle Edition £20.67  
Paperback £26.80  
Celebrate 5 Years of Kindle
Celebrate 5 Years of Kindle: Bestsellers for 99p
For five days starting 2nd September, 2015 we'll reveal a selection of bestsellers from the last 5 years, on sale for 99p for one day only -- come back each day to see the next selection of favourites for 99p. >Shop now

Book Description

This easy-to-use, fast-moving tutorial introduces you to functional programming with Haskell. You'll learn how to use Haskell in a variety of practical ways, from short scripts to large and demanding applications. Real World Haskell takes you through the basics of functional programming at a brisk pace, and then helps you increase your understanding of Haskell in real-world issues like I/O, performance, dealing with data, concurrency, and more as you move through each chapter.

With this book, you will:

  • Understand the differences between procedural and functional programming
  • Learn the features of Haskell, and how to use it to develop useful programs
  • Interact with filesystems, databases, and network services
  • Write solid code with automated tests, code coverage, and error handling
  • Harness the power of multicore systems via concurrent and parallel programming

You'll find plenty of hands-on exercises, along with examples of real Haskell programs that you can modify, compile, and run. Whether or not you've used a functional language before, if you want to understand why Haskell is coming into its own as a practical language in so many major organizations, Real World Haskell is the best place to start.

Customers Who Bought This Item Also Bought

Page of Start over
This shopping feature will continue to load items. In order to navigate out of this carousel please use your heading shortcut key to navigate to the next or previous heading.

Product Description

Book Description

Code You Can Believe In

About the Author

Bryan O'Sullivan is an Irish hacker and writer who likes distributed systems, open source software, and programming languages. He was a member of the initial design team for the Jini network service architecture (subsequently open sourced as Apache River). He has made significant contributions to, and written a book about, the popular Mercurial revision control system. He lives in San Francisco with his wife and sons. Whenever he can, he runs off to climb rocks.

John Goerzen is an American hacker and author. He has written a number of real-world Haskell libraries and applications, including the HDBC database interface, the ConfigFile configuration file interface, a podcast downloader, and various other libraries relating to networks, parsing, logging, and POSIX code. John has been a developer for the Debian GNU/Linux operating system project for over 10 years and maintains numerous Haskell libraries and code for Debian. He also served as President of Software in the Public Interest, Inc., the legal parent organization of Debian. John lives in rural Kansas with his wife and son, where he enjoys photography and geocaching.

Don Stewart is an Australian hacker based in Portland, Oregon. Don has been involved in a diverse range of Haskell projects, including practical libraries, such as Data.ByteString and Data.Binary, as well as applying the Haskell philosophy to real-world applications including compilers, linkers, text editors, network servers, and systems software. His recent work has focused on optimizing Haskell for high-performance scenarios, using techniques from term rewriting.

Product details

  • Format: Kindle Edition
  • File Size: 1751 KB
  • Print Length: 712 pages
  • Page Numbers Source ISBN: 0596514980
  • Simultaneous Device Usage: Unlimited
  • Publisher: O'Reilly Media; 1 edition (15 Nov. 2008)
  • Sold by: Amazon Media EU S.à r.l.
  • Language: English
  • ASIN: B0026OR2FY
  • Text-to-Speech: Enabled
  • X-Ray:
  • Word Wise: Not Enabled
  • Enhanced Typesetting: Not Enabled
  • Average Customer Review: 3.8 out of 5 stars  See all reviews (12 customer reviews)
  • Amazon Bestsellers Rank: #87,077 Paid in Kindle Store (See Top 100 Paid in Kindle Store)
  •  Would you like to give feedback on images?

More About the Authors

Discover books, learn about writers, and more.

What Other Items Do Customers Buy After Viewing This Item?

Customer Reviews

Most Helpful Customer Reviews
13 of 13 people found the following review helpful
3.0 out of 5 stars Frustrating 16 Jun. 2011
I have mixed feelings about this book. My girlfriend thought it was my favourite book because I was always reading it and it became very well-worn. However, the real reason I couldn't put it down was because I couldn't understand it. The main problems with the book are:

1. The code examples are too interdependent. If you get a mental block (or get bored), you can't jump to another chapter to `take a bite from a different side of the cake' because most code just builds on the code developed in previous chapters. So if you skipped the previous chapter you're stuffed. Even if you didn't skip the previous chapter, you will be doing well if you can piece together the `actual' code from all the fragments littered throughout the chapter - some of which are red herrings (ie code fragments that are there to show you how not to do it).
2. There is a step change in pace around chapter 10, which goes from the pace of a Sunday drive to light-speed, almost as if there was a change of author. The chapter is way too dense and tries to get too many concepts across at once. This is also the chapter that has the greatest number of mistakes, so for me it was like hitting a wall, my progress practically slowed to a halt and I was seriously debating whether to continue with the language.

That said there is some good stuff in here, it just needs a re-think. If you are new to Haskell, I recommend you check out `Learn You A Haskell for Great Good' first and come back here if you are a masochist.
Was this review helpful to you?
16 of 17 people found the following review helpful
2.0 out of 5 stars Could have been so much better 16 Jun. 2009
By P
I agree with the other readers who say they just got frustrated by the author's inability to illustrate his point through simple, atomic and self explanatory examples. I enjoyed the first few chapters, because the author had not yet built up a critical mass of backward references, but after that I wanted to skip a whole load of stuff that wasn't relevant to me. However skipping ahead to chapters on things like Monads, I find it referring back to previous chapters, which in turn refer back to previous chapters and so on. I tried to read the whole thing linearly, but the examples are too specialised for me to bothered by them. I just can't bring myself to care about bar code reading programs, no matter how much I try - and there is a whole chapter on this!
The book isn't all bad, the early chapters are good, and I some Haskell concepts did `click' for me from reading this book. The author's style when steered away from examples that run into pages is clear and good.
The problem is its combination of being rather long, and that it *really* has to be read in a linear fashion.

You can pick up the language just as well using online tutorials and the user mail list is pretty helpful if you get lost on concepts like Monads. I think there are far better tutorials on Monads on the net now than this book, although I accept there are a whole load more terrible explanations on the net, and you'll need to read 10 bad ones to find 1 good one - bit it is the quickest way to learn the concept.

What Haskell needs is author capable of producing a book like the "Effective C++" series. It assumes fairly basic knowledge of the language (you can pick that up from anywhere).
Read more ›
Comment | 
Was this review helpful to you?
3 of 3 people found the following review helpful
1.0 out of 5 stars Simply not good enough 22 Sept. 2012
Format:Kindle Edition|Verified Purchase
I bought the Kindle edition of this book having done functional programming with other languages before (Lisp and Scala). The first third or so of this book was material very familiar to me from those other languages and even here I found the book hard work. There were mistakes where the description in the text did not match the sample code. There was an instance of sample code not compiling, and infact the compile error was printed into the book in place of where the program output was expected (maybe this is only present in the Kindle print). Sample code was often too abstract using identifier names that did not help me to understand what the sample code was trying to achieve (ironic for "real world" haskell). In other cases the sample code required functions that would only be implemented much later in the book (very confusing if you are trying out the samples as you read).

The next third or so of the book was new territory for me, and here I found myself often second guessing the text of the book. I suspected mistakes but did not have the confidence to know for sure. At this point the online version of the book proved to be very helpful ([...]). Here there are plenty of online comments from readers of the book that correct many of the mistakes and clear up confusion. Take a skim at some of the comments there before you buy to get an indication of the types of problems this book has.

I gave up on this book at roughly the two thirds mark, and am now instead reading "Programming in Haskell". I have yet to complete this alternative book but so far it is of much higher standard than Real World Haskell.
Comment | 
Was this review helpful to you?
7 of 9 people found the following review helpful
5.0 out of 5 stars Excellent introduction to practical use of Haskell 29 April 2009
I am no newcomer to functional programming languages, having spent a few years with Lisp and a little with ML as well, but I never really got Haskell under my skin, because of the difficulty to really, fully understanding Monads, and monadic programming, and the very high level of abstractness Haskell encourages. Thanks to this book, and the references it contains to online material and articles, I now have much more familiarity with the idioms, the abstract level of code, and good programming style of Haskell as well as how better to think about problems in Haskell.

Through out the book, the focus is constantly on how best to use Haskell, in particular to give the reader a good feeling for what constitutes good programming style, and why in each case.

In the context of a subject I've not often found the ending of a subject to leave me missing an explanation for why things are done this way, or why things were done in a certain way. In the the few cases this happened things were quickly cleared up by just reading (or in a single case jumping) forward. I haven't left a topic unsatisfied with the depth, width, or any lack of detail.

The book may be an introduction, but fortunately it doesn't shy away from advanced concepts like Monad Transformers, and why they are more essential than Monads themselves when talking about the Monad programming style. Over all GUI, concurrent and parallel programming, databases, network and web programming, system programming, error handling, profiling, and optimization, package installation, and many other earthly issues are among just some of the subjects presented in the book. There is enough to get everybody going.
Read more ›
Comment | 
Was this review helpful to you?
Would you like to see more reviews about this item?
Were these reviews helpful?   Let us know
Most Recent Customer Reviews
5.0 out of 5 stars Awesome, mind-bending read
A very nice, thought-provoking read. The theory and the hands-on examples are mixed in a perfect ratio to turn your imperative mind inside out.
Published 23 months ago by Mátyás Lipták
5.0 out of 5 stars You must have it
Really good book for who wants to learn more about Haskell and functional programming. It is a well written introduction to the language itself and to some important libraries.
Published on 7 Sept. 2011 by Rief
5.0 out of 5 stars Excellent book for Haskell
It is an excellent book for Haskell. You can learn to use this lenguage from the begining, step by step. It is very easy to follow the guides and start to programm with Haskell.
Published on 15 Jan. 2011 by Sergio Huerta Parajon
3.0 out of 5 stars Its a fair attempt at explaining the incomprehensible
If you like getting down and dirty with code then this is the book for you. Unlike some books that deal with the theory of Haskell first, Real World Haskel gets you walking though... Read more
Published on 25 Nov. 2010 by SteveOnCanvas
5.0 out of 5 stars Best introduction around
If you want to get into Haskell without getting bogged down in mathematics, this book is a fantastic, practical introduction. Read more
Published on 14 July 2010 by Mrs W.
5.0 out of 5 stars A book on a Programming Language can't get any better...
This book is rich in content and motivation to learn one of the most interesting programming languages nowadays. Read more
Published on 26 Jun. 2009 by Paulo Matos
5.0 out of 5 stars Elevates Haskell from a theoretical distraction to a useful tool
I had been searching for a clear, concise reference for Haskell for years before I discovered this book. Read more
Published on 9 Feb. 2009 by M. Coxall
2.0 out of 5 stars The wrong way to teach (programming)
I really wanted to like this book. The title alone seems so appealing. Instead of the usual, often dry, approach to teaching functional programming by means of mostly mathematical... Read more
Published on 4 Jan. 2009 by Per Velschow
Search Customer Reviews

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
First post:
Prompts for sign-in

Search Customer Discussions
Search all Amazon discussions

Look for similar items by category