Haskell: The Craft of Functional Programming (2nd Edition) (International Computer Science Series) | 
enlarge | Author: Simon Thompson Publisher: Addison Wesley Category: Book
List Price: $59.60 Buy New: $42.93 You Save: $16.67 (28%)
New (26) Used (14) from $36.00
Avg. Customer Rating: 14 reviews Sales Rank: 147442
Media: Paperback Edition: 2 Number Of Items: 1 Pages: 528 Shipping Weight (lbs): 1.8 Dimensions (in): 9.3 x 6.7 x 1.1
ISBN: 0201342758 Dewey Decimal Number: 005.133 EAN: 9780201342758 ASIN: 0201342758
Publication Date: April 8, 1999 Availability: Usually ships in 1-2 business days Condition: All orders ship same business day via standard shipping (USPS Media Mail) if received by 1 PM CST.
|
| Also Available In:
|
| Similar Items:
|
| Editorial Reviews:
Book Description The second edition of Haskell: The Craft of Functional Programming is essential reading for beginners to functional programming and newcomers to the Haskell programming language. The emphasis is on the process of crafting programs and the text contains many examples and running case studies, as well as advice an program design, testing, problem solving and how to avoid common pitfalls. Building on the strengths of the first edition, the book includes many new and improved features: Complete coverage of Haskell 98, the standard version of Haskell which will be stable and supported by implementations for years to come. An emphasis on software engineering principles, encouraging a disciplined approach to building reusable libraries of software components. Detailed coverage of the Hugs interpreter with an appendix covering other implementations. A running case study of pictures emphasizes the built-in functions which appear in the standard prelude and libraries. It is also used to give an early preview of some of the more complex language features, such as high-order functions. List comprehensions and the standard functions over lists are covered before recursion. Early coverage of polymorphism supporting the "toolkit" approach and encouraging the resuse of built-in functions and types. Extensive reference material containing details of further reading in books, journals and on the World Wide Web. Accompanying Web Site supporting the book, containing all the program code, further teaching materials and other useful resources.
|
| Customer Reviews: Read 9 more reviews...
A good book for the advanced programmer or the absolute beginner, but bloody confusing for intermediate college students. February 22, 2008 0 out of 1 found this review helpful
I got this book for a CS class in college but never used it (professors just love you to waste your money that way). I recently came back to this book after getting really into Python, especially the functional features. The approach the book takes is more or less instructing someone who knows absolutely nothing about programming in the ways of functional thinking. This makes it perfectly easy for an absolute beginner with no imperative or OOP prejudices to learn Haskell--just as if they were taught hex before decimal they'd catch onto hex real quick. This is also a great text for someone who's had some functional programming experience (map, filter, reduce, monads) and for whom recursion is a friend. I've become a much better Python programmer (and a better programmer in general) from just scanning the book every time in the bathroom. However, for a student who's been doing Java or C/C++ for a year or two, this will be extremely confusing. They will already have adopted a certain way of thinking and will have trouble going through this text. This is why this book was useless to me for several years. But for the advanced guys or the absolute n00bs I'd definitely recommend this book. As far as functional programming books go it's downright lively. My only complaint is that it doesn't really show me any practical things I can do with Haskell (these examples seem hard to find anywhere), such as database or GUI stuff. I mean sure it's cool to do a graph walk incredibly succinctly, but that's not something I'm going to use for work . . .
Great overall, no need for other books, though Monads still ill-explained January 11, 2008 Very good introduction to Haskell and functional programming in general. Covers Haskell's type inference system and unconventional syntax in a comfortable, clear way. Lazy evaluation and its effects on the language are likewise explained in an clear approachable way. There's lots of SICP-like exercises to practice with if you want, though their placement makes the book a bit confusing at times if you don't as it's hard to tell the exercises and the material apart sometimes. I haven't looked at competing Haskell books, but after reading this one, I don't see the need to. This book doesn't explain monads particularly well (though most other explanations, besides one explanation in a reddit comment I saw, are equally not understandable, so that's no great fault). Overall, a great book for programmers who want to get into functional programming or quickly learn Haskell.
Good gradual introduction; good value for money November 4, 2006 5 out of 5 found this review helpful
This book makes an excellent gradually-paced introduction to Haskell, with plenty of examples and exercises, for those who are a little overwhelmed by the online "Gentle Introduction to Haskell". My only complaint is that it proceeds a bit too slowly for my taste, taking 150 pages to get around to discussing higher-order functions and other advanced topics that make Haskell worth learning. This is understandable, since it's intended to be usable as a textbook for a first programming course, but it's also frustrating for someone who already has programming experience. The other feature of the book that stands out is its price, which is quite reasonable for a textbook. All told, this is an good-quality Haskell textbook suitable for either new programmers or (by skimming the first several chapters) more experienced programmers looking to learn functional programming.
Review from a first-year computer science perspective March 19, 2006 14 out of 14 found this review helpful
Most of the reviewers for this text so far seem to be more experienced programmers or computer scientists. So I am writing this review to give a different perspective.
My uni has this year chosen Haskell as the INTRODUCTORY language, apparently because it: 1) Is a clear implementation of some fundamental programming concepts 2) Puts everyone on an equal footing, since no-one is likely to have studied it (or even another functional language) before.
I have little formal background but have been messing around with scripting languages like TCL for a couple of years.
The initial transition to thinking from a functional perspective seemed very difficult. The idea of recursion as opposed "just sticking it in a loop" took a while to stick.
But I have found simply by working through the book I have progressed quickly and in only a few weeks it has become quite natural to think in a Haskell way.
I attribute this to the excellent layout of the book, but more importantly the frequent exercises provided throughout each chapter. As my lecturer is fond of saying, practice is the only way to learn programming, and it is by exploring the introduced concepts in this way that I feel my learning of Haskell has been most effective.
The book is paced, if anything, a little slowly. But since I am someone who likes to gain a thorough understanding of topics I don't mind this. The exercises themselves are well thought out and tend to offer an increasing amount of challenge. Something that conceptually seems trivial can be given an interesting twist when it comes to writing a function.
I suppose experienced programmers may have covered similar kinds of exercises in other languages so it may not be quite so interesting, and they will be more wrestling with the mechanics of Haskell than gaining theorertical insights. However this highlights it's usefulness to a beginning programmer.
It has been said that learning a functional language increases your abilities in other languages. Whether this is true for me I haven't discovered yet, but certainly it has given me far more insight than I could have got from a scripting langauge about what is actually happening in a program.
This really is a well-written and surprisingly accessible book considering the typical Haskell programmer. I can highly recommend it.
Eh December 31, 2005 5 out of 5 found this review helpful
This book takes an interesting topic like functional programming and makes it hideously boring. In retrospect, I wish I'd bought Hudak's book instead. I read a review claiming that Mr. Thompson's book was better for newcomers to Haskell than Mr. Hudak's. I don't know where this idea came from; I later borrowed Hudak's "Haskell School of Expression" and found it to be more informative and faster-paced than this book. I give it two stars only because it is useful as a reference. If you're looking to learn Haskell and do cool things with it, get School of Expression instead.
|
|
|