• List Price: $83.99
  • Save: $65.03 (77%)
Rented from apex_media
To Rent, select Shipping State from options above
Due Date: Aug 14, 2015
FREE return shipping at the end of the semester. Access codes and supplements are not guaranteed with rentals.
Used: Acceptable | Details
Sold by apex_media
Condition: Used: Acceptable
Access codes and supplements are not guaranteed with used items.
Qty:1
  • List Price: $83.99
  • Save: $13.44 (16%)
Only 5 left in stock (more on the way).
Ships from and sold by Amazon.com.
Gift-wrap available.
Introduction to Functiona... has been added to your Cart
Sell yours for a Gift Card
We'll buy it for $16.05
Learn More
Trade in now
Have one to sell? Sell on Amazon
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See all 2 images

Introduction to Functional Programming using Haskell (2nd Edition) Paperback – May 9, 1998

ISBN-13: 007-6092032182 ISBN-10: 0134843460 Edition: 2nd

Buy New
Price: $70.55
Rent
Price: $18.96
29 New from $68.14 22 Used from $56.43
Rent from Amazon Price New from Used from
Paperback
"Please retry"
$18.96
$70.55
$68.14 $56.43
Free Two-Day Shipping for College Students with Amazon Student Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student


Get Up to 80% Back When You Sell Us Your Books
$70.55 FREE Shipping. Only 5 left in stock (more on the way). Ships from and sold by Amazon.com. Gift-wrap available.

Frequently Bought Together

Introduction to Functional Programming using Haskell (2nd Edition) + Pearls of Functional Algorithm Design + Purely Functional Data Structures
Price for all three: $164.90

Buy the selected items together
NO_CONTENT_IN_FEATURE

Shop the new tech.book(store)
New! Introducing the tech.book(store), a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now

Product Details

  • Paperback: 448 pages
  • Publisher: Prentice Hall; 2 edition (May 9, 1998)
  • Language: English
  • ISBN-10: 0134843460
  • ISBN-13: 978-0134843469
  • Product Dimensions: 6.6 x 1.1 x 8.8 inches
  • Shipping Weight: 1.4 pounds (View shipping rates and policies)
  • Average Customer Review: 3.2 out of 5 stars  See all reviews (4 customer reviews)
  • Amazon Best Sellers Rank: #1,065,555 in Books (See Top 100 in Books)

Editorial Reviews

From the Back Cover

After the success of the first edition, Introduction to Functional Programming using Haskell has been thoroughly updated and revised to provide a complete grounding in the principles and techniques of programming with functions. The second edition uses the popular language Haskell to express functional programs. There are new chapters on program optimisation, abstract datatypes in a functional setting, and programming in a monadic style. There are complete new case studies, and many new exercises. As in the first edition, there is an emphasis on the fundamental techniques for reasoning about functional programs, and for deriving them systematically from their specifications. The book is self-contained, assuming no prior knowledge of programming and is suitable as an introductory undergraduate text for first- or second-year students.

Customer Reviews

3.2 out of 5 stars
5 star
0%
4 star
25%
3 star
75%
2 star
0%
1 star
0%
See all 4 customer reviews
Share your thoughts with other customers

Most Helpful Customer Reviews

25 of 30 people found the following review helpful By nunb on November 26, 2004
Format: Paperback
Bird and Wadler got me started on functional programming. Before that, I'd only seen discussions of C++/STL functors and functions like for, map etcetera.

B&W was dense, and magic. It reminded me of the first time I read the K&R C book, you're following along fine, and all of a sudden you're off the deep end!

The syntax, sort of ML-like adds to the 'magic' feel of it all. Overall I think it's a good book. But like with K&R, make this your second or third book, to ground you in the fundamentals after you've become somewhat familiar with the syntax and application of a particular fnal language.

That said, it covers a wide breadth of topics, and does justice to them as well. But this opinion comes from a newbie at functional programming, so caveat lector!

For me, it made me realise that there was a whole 'new' way of programming, vastly bigger than the few functions C++ had in its STL, and that C++ syntax mostly got in the way. However, perhaps because of this book, I never quite grokked Haskell/ML syntax either, though LISP I find easy (easier).
1 Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
1 of 1 people found the following review helpful By Hector Correa on January 21, 2014
Format: Paperback Verified Purchase
The bad: Despite the "introduction" level implied in the title, this is a hard book to read. The book is not a "Haskell book" either. The author uses a mathematical notation that easily translates to Haskell but it's not Haskell per se.

The good: Having said that, the author gives a very good explanation of some of the concepts that make functional programming different from other paradigms. Some of the explanations given in the book are by far better (and more in-depth) than what's found on the web. That's one of the reason is at times hard to read. For example, the section on curring is very good and raises points that I have not seen in other books/articles.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
17 of 25 people found the following review helpful By Roger Costello on November 4, 2012
Format: Paperback Verified Purchase
There is a lot of excellent information in this book.

However, it is very dense and the reader should beware that many of the programs in the book don't work. I surmise that they are more intended to show the algorithm rather than the actual Haskell implementation.

In Haskell it is particularly important to pay attention to the details, which is why I give this book only three stars.

Here is an example of a program in the book that does not work.

On page 82 the author Richard Bird provides this sample implementation of the floor function:

floor x = searchFrom 0
where searchFrom = decrease . upper . lower
lower = until (<=x) decrease
upper = until (>x) increase
decrease n = n - 1
increase n = n + 1

The problem with that implementation is that it does not return an Integer value; rather, it returns a decimal (Double) value. Here's an example:

floor (-3.4) -- returns (-4.0)

That is wrong. The specification for floor says that it "maps a value of type Float to a value of type Integer." Clearly it is not producing an Integer result.

I will now explain how to revise floor so that it returns an Integer value.

The heart of the problem is with the until function.

Here is how Richard Bird implements it:

until :: (a -> Bool) -> (a -> a) -> a -> a
until p f y = if p y then y else until p f (f y)

It takes three arguments, p, f, and y. Look at the signature of that function. The type of the third argument, y, dictates the type of the other arguments and the type of the result--whatever type y is, the other arguments must be the same type and the result must be the same type.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
10 of 47 people found the following review helpful By A Customer on November 16, 2002
Format: Paperback
This is a good introduction to functional programming.
It is less language specific than some of the other books.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

More About the Authors

Discover books, learn about writers, read author blogs, and more.

What Other Items Do Customers Buy After Viewing This Item?

Want to discover more products? Check out these pages to see more: functional programming, "a logical approach to discrete math", "a logical approach to discrete math"

Set up an Amazon Giveaway

Amazon Giveaway allows you to run promotional giveaways in order to create buzz, reward your audience, and attract new followers and customers. Learn more
Introduction to Functional Programming using Haskell (2nd Edition)
This item: Introduction to Functional Programming using Haskell (2nd Edition)
Price: $83.99 $70.55
Ships from and sold by Amazon.com