Haskell may be unlike any language you've ever used before. Its authors call it a "deep language" and believe that learning it is a hugely rewarding experience; they call it "code you can believe in."
What makes Haskell so remarkable? Real World Haskell's authors focus on three elements as they explain: "The first is novelty: we invite you to think about programming from a different and valuable perspective. The second is power: we'll show you how to create software that is short, fast, and safe. Lastly, we offer you a lot of enjoyment: the pleasure of applying beautiful programming techniques to solve real problems."
If all or part of that sounds good to you, you'll want to pick up a copy of Real World Haskell. It's an easy-to-use, fast-moving tutorial and introduction 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. You'll go through the basics of functional programming at a brisk pace, as you increase your understanding of Haskell in real-world issues like I/O, performance, dealing with data, concurrency, and more.
With this book, you will:
The book offers plenty of hands-on exercises, along with examples of 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.
Real World Haskell
Bryan O'Sullivan, Donald Bruce Stewart, John Goerzen
ISBN: 9780596514983, 710 pages, $49.99, 38.50, 40 €
www.oreilly.com/catalog/9780596514983
John Goerzen has written several real-world Haskell libraries and applications, including the HDBC database interface, the ConfigFile configuration file interface, a podcast downloader, among others.
Bryan O'Sullivan was a member of the initial design team for the Jini network service architecture (subsequently open sourced as Apache River).
Donald Bruce Stewart is involved in a diverse range of Haskell projects, including practical libraries such as Data.ByteString, and applies Haskell to real-world applications, including compilers, linkers, text editors, network servers and systems software.