Rating:

Author: Bryan O'Sullivan
ISBN : B0026OR2FY
New from $22.99
Format: PDF
You can download Free Real World Haskell [Kindle Edition] from with Mediafire Link Download Link
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.
Direct download links available for Free Real World Haskell
- File Size: 1732 KB
- Print Length: 714 pages
- Simultaneous Device Usage: Unlimited
- Publisher: O'Reilly Media; 1 edition (November 14, 2008)
- Sold by: Amazon Digital Services, Inc.
- Language: English
- ASIN: B0026OR2FY
- Text-to-Speech: Enabled
X-Ray:
- Lending: Not Enabled
- Amazon Best Sellers Rank: #293,869 Paid in Kindle Store (See Top 100 Paid in Kindle Store)
Free Real World Haskell
The good news is, this is probably the best Haskell book yet. The bad news is, it's still a frustratingly confusing jumble. It starts out well, introducing expressions, type inference, recursion, pattern matching, algebraic types, and higher order functions, with an emphasis on maps and folds (the way real world Haskell code is actually written), and it contains exercises that range from simple to challenging. The first four chapters alone are worth the price.
Unfortunately, the problems start in chapter 5, and rarely let up. It starts by introducing a datatype for JSON data for the purpose of pretty-printing it. The way the pretty-printer is rolled out is confusing -- it constantly jumps between code snippets that won't even compile, because a type they depend on is not defined til nearly the end of the chapter. And while it stays away from excessive cleverness, function names are confusingly named. In fact the entire nature of the pretty-printer revolves around a "Doc" abstraction that is never clearly explained or rationalized.
Later chapters are also rich with useful information, such as explanations of various GHC language extensions to the type system (which are really de facto standard Haskell nowadays). Unfortunately (there are many "unfortunatelys" to use in this review) I would never have been able to follow these explanations had I not already known a little about them -- unlike the rest of the examples in the book, the examples stop being "real-world" and instead devolve into meaningless metasyntax like "Foo" and "Bar".
By the time monads are finally introduced (late, but rightly so -- I consider this delay in introducing them to be a plus), the reader has had to suffer through some very tedious projects, such as parsing an obscure binary format.
Until this book came along you really needed two books to learn Haskell Programming. Haskell: The Craft of Functional Programming (2nd Edition) (International Computer Science Series) teaches the mechanics of Haskell programming, but it can be dry reading. The Haskell School of Expression: Learning Functional Programming through Multimedia shows you the possibilities of Haskell via multimedia programming, but it does miss some basic details about the language that are in the first book. This second book is lots of fun, but I think that the new O'Reilly book replaces the first book entirely and some of the functionality of the second.
Haskell has its roots in academia, and functional programming requires lots of up-front thinking about your total approach. It is not a language where you can usually just sit down and start coding. This book shows you how to use functional programming and Haskell to solve real-world problems. Each chapter contains many code samples, and many contain complete applications. The book contains an application that downloads podcast episodes from the web and stores the history in an SQL database. There is also an application that takes a grainy phone camera photo of the barcode on a book and transforms it into an identifier that you can then ue to query a library website. This is the "fun stuff" that seems to work out so well and so elegantly in the Haskell language.
Download Link 1 -
Download Link 2