Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image
Sell yours for a Gift Card
We'll buy it for $2.25
Learn More
Trade in now
Have one to sell? Sell on Amazon

Algorithms: A Functional Programming Approach (International Computer Science Series) Paperback – June 1, 1999

ISBN-13: 978-0201596045 ISBN-10: 0201596040 Edition: 1st
Free Two-Day Shipping for College Students with Amazon Student Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student

Hero Quick Promo
Save up to 90% on Textbooks
Rent textbooks, buy textbooks, or get up to 80% back when you sell us your books. Shop Now

Editorial Reviews

From the Back Cover

The design of algorithms for problem-solving lies at the heart of computer science. Concise yet authoritative, Algorithms: A Functional Programming Approach teaches the skills needed to master this essential subject.

The authors challenge more traditional methods of teaching algorithms by using a functional programming context, with Haskell as the implementation language. This leads to smaller, clearer and more elegant programs which enable the programmer to understand the algorithm itself more quickly and to use that understanding to explore alternative solutions. Placing the emphasis on program development rather than the mathematical properties of algorithms, the book uses a succession of practical programming examples to develop in the reader problem-solving skills which can be easily transferred to other language paradigms.

Key features of this innovative text include:
  • Unmatched collection of functional programming algorithms
  • A wealth of practical examples, bringing the algorithms into clear focus
  • End of chapter exercises throughout
  • Source code and selected solutions freely available online
  • Comprehensive index and bibliographical notes
  • Appendices on Haskell implementations and mathematical background

For computer science students taking algorithms and/or functional programming courses, Algorithms: A Functional Programming Approach represents the ideal textbook. It is also an invaluable reference source of functional programs for practitioners.


About the Author

Fethi Rabhi completed his PhD in 1990 at Sheffield University (UK). After a short stay at Allegheny College (USA) as a visiting professor, he is now a lecturer in Computer Science at the University of Hull (UK). His teaching and research interests include all aspects of parallel processing and functional languages.

Guy Lapalme is a professor of Computer Science at the University of Montreal in Canada. He has been interested in functional languages for many years, especially their implementation and use in other areas such as natural language semantics and bioinformatics.


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

  • Series: International Computer Science Series
  • Paperback: 256 pages
  • Publisher: Addison-Wesley; 1 edition (June 1, 1999)
  • Language: English
  • ISBN-10: 0201596040
  • ISBN-13: 978-0201596045
  • Product Dimensions: 6.8 x 0.5 x 9.5 inches
  • Shipping Weight: 13.8 ounces
  • Average Customer Review: 2.0 out of 5 stars  See all reviews (2 customer reviews)
  • Amazon Best Sellers Rank: #1,725,028 in Books (See Top 100 in Books)

More About the Author

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

Customer Reviews

2.0 out of 5 stars
5 star
4 star
3 star
2 star
1 star
See both customer reviews
Share your thoughts with other customers

Most Helpful Customer Reviews

8 of 10 people found the following review helpful By Lars Tackmann on April 11, 2010
Format: Paperback Verified Purchase
I bought this book as I thought it would make a good companion to the excellent Purely Functional Data Structures. How wrong I was. It was supposed to be a book about implementing algorithms in a functional language, but instead the content spreads far a wide. In the opening chapters the authors starts out with a incredible short introduction to Haskell, which quickly turns into a vague discussion on algorithm optimization in functional languages (and this is before! they have even shown how to implement "quick sort") - this writing style is completely unacceptable, either you set the bar high by requiring the audience to know Haskell beforehand or you explain it properly.

The book continues in the same random style, with the authors starting out trying to accomplish something simple, quickly throwing in a few random related computer science topics and then ultimately failing to explain what they set out to do. In short, if you want to learn how to implement classic algorithms in a functional programming language go read Purely Functional Data Structures instead (perhaps after first getting acquainted with Haskell via Real World Haskell).
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
4 of 7 people found the following review helpful By Bill A on August 7, 2010
Format: Paperback Verified Purchase
It took me a while to find this book, and I had to ultimately buy it used. It turned out not to be quite as good as I expected.

The book is littered with single-letter variable names and is in love with mutually-recursive functions. It includes a quicksort implementation that runs on lists (instead of an ST-based array implementation). If this book were easy to find, I'd say go for it. But since it's out of print, don't bother.
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