Industrial-Sized Deals TextBTS15 Shop Women's Handbags Learn more nav_sap_plcc_6M_fly_beacon Beach House $5 Off Fire TV Stick Subscribe & Save Shop Popular Services gotS5 gotS5 gotS5  Amazon Echo Starting at $99 Kindle Voyage Metal Gear Solid 5 Shop Back to School with Amazon Back to School with Amazon Outdoor Recreation Learn more

Introduction to Functional Programming Systems Using Haskell (Cambridge Computer Science Texts) 1st Edition

5 customer reviews
ISBN-13: 978-0521277242
ISBN-10: 0521277248
Why is ISBN important?
ISBN
This bar-code number lets you verify that you're getting exactly the right version or edition of a book. The 13-digit and 10-digit formats both work.
Scan an ISBN with your phone
Use the Amazon App to scan ISBNs and compare prices.
Have one to sell? Sell on Amazon
Buy used
$2.57
Buy new
$53.77
More Buying Choices
24 New from $43.97 19 Used from $2.57
Free Two-Day Shipping for College Students with Amazon Student Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student


InterDesign Brand Store Awareness Textbooks
$53.77 FREE Shipping. Only 4 left in stock (more on the way). Ships from and sold by Amazon.com. Gift-wrap available.

Frequently Bought Together

Introduction to Functional Programming Systems Using Haskell (Cambridge Computer Science Texts) + Functional Programming: Practice and Theory
Price for both: $110.05

Buy the selected items together

Editorial Reviews

Review

"...a very readable and understandable introduction to functional programming. It provides many concrete programming examples written in Haskell and discusses several design principles that seem to be unique to functional programming. I would recommend this book to all professional software developers for its discussion of software design using higher-order functions and streams. The book is perfect for an undergraduate course on functional programming. Haskell compilers are available from the research community, so students can get hands-on experience. Graduate students should be able to read this book on their own for an introduction to functional programming, the lambda calculus, polymorphic types, and combinatory logic." Reginald Meeson, ACM SIGPLAN Notices

Book Description

The basic concepts of applicative programming are presented using the language HASKELL for examples. In addition to exploring the implications for parallelism, a discussion of lamda calculus and its relationship with SASL is included.

NO_CONTENT_IN_FEATURE


Best Books of the Month
Best Books of the Month
Want to know our Editors' picks for the best books of the month? Browse Best Books of the Month, featuring our favorite new books in more than a dozen categories.

Product Details

  • Series: Cambridge Computer Science Texts (Book 27)
  • Paperback: 304 pages
  • Publisher: Cambridge University Press; 1 edition (June 26, 1992)
  • Language: English
  • ISBN-10: 0521277248
  • ISBN-13: 978-0521277242
  • Product Dimensions: 6 x 0.7 x 9 inches
  • Shipping Weight: 15.2 ounces (View shipping rates and policies)
  • Average Customer Review: 4.4 out of 5 stars  See all reviews (5 customer reviews)
  • Amazon Best Sellers Rank: #1,436,079 in Books (See Top 100 in Books)

More About the Author

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

Customer Reviews

5 star
40%
4 star
60%
3 star
0%
2 star
0%
1 star
0%
See all 5 customer reviews
Share your thoughts with other customers

Most Helpful Customer Reviews

10 of 10 people found the following review helpful By D. Grady on January 29, 2007
Format: Hardcover
Davie's book is aptly named; although he briefly outlines the important syntax of the Haskell language, this is not intended to be "How to Program in Haskell." This book is an introduction to the ideas of functional languages rather than a tutorial on the nuts and bolts of programming. As a result, many of the techniques of programming in Haskell are presented, but in the broader context of his explanation of functional programming rather than in the more narrow, "In Haskell, you must do x and y to accomplish z" sense. I thought that this was very effective; although I have used functional programming systems in the past this was the first time I had read a clear presentation of their theory and history. Parts of the book are very dense and make for heavy going, but overall I think Davie has done a very good job of introducing the reader to the idea of a functional programming language.
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 4 people found the following review helpful By Samuel Danielson on October 4, 2008
Format: Paperback
Conceptually the content of this book can be divided into three major sections. The first is a well constructed overview of Haskell which, though not suitable as a primary tutorial, is organized in a building block style that clearly explains the core concepts of the language and their syntax. Examples are of minimal complexity and fit each purpose well while remaining free of yet unintroduced material. The other two sections, theory and implementation, are interleaved to present the material in a constructive way. The introduction to lambda calculus marks the first deviation from a pragmatic study of Haskell, however, proofs are largely omitted leaving mostly definitions, relevant theorems, and explanations. This book served as my introduction to lambda calculus and I found it somewhere between impenetrable and relaxing, which is to say that it was very helpful despite requiring a second read. The chapter closes with a desugaring of Haskell into the simpler constructs of lambda calculus. Next the properties of applicative languages are studied and implemented (in Haskell) on a SECD machine. Then lazy evaluation is studied and techniques of implementation such as SECD, graph reduction, SKI-combinators, and the G-Machine are covered. Following this is an overview of program transformations and optimizations with a brief summary of ongoing work in the field. The three conceptual topics; language, theory, and implementation are covered uniformly so there is a decreasing completeness to the Haskell presentations as abstractions pile up e.g. there is no concrete implementation of lazy evaluation. Instead the operation of machines is described with graphics or combinators in the notation of lambda calculus. This book covers implementation adequate for an intermediate command of Haskell while serving as an excellent introduction to the theory behind functional programming.
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 2 people found the following review helpful By Bharath Mukundakrishnan on May 6, 2011
Format: Paperback Verified Purchase
This had some pseudo code but explanations are lucid and excellent. A real good introductory book explaining concepts which is the approach I take when I learn.
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
0 of 1 people found the following review helpful By Edvard Majakari on February 19, 2011
Format: Paperback Verified Purchase
While not recommended for first Haskell book, I recommended this book to people who are new to FP and want to get general idea about FP concepts, and are not afraid of mathematical rigor.
To me, it seems to cover all basic contents of FP and has both theoretical background (eg. lambda calculus) and shows how the theory maps into Haskell.

However, to be able to actually create something useful with the language, I'd recommend to accompany this book with O'Reilly's Real World Haskell, which is much more practical and is focused more to Haskell itself. That said, RWH lacks the more deep theory behind FP, but together these two books make a powerful resource for future professional FP programmers.
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
9 of 45 people found the following review helpful By wiredweird HALL OF FAMETOP 1000 REVIEWER on February 17, 2006
Format: Paperback Verified Purchase
The Haskell programming language is part of the backlash against "big" languages such as Ada and C++. Although its syntax is not (not necessarily) like Lisp, it follows in the Lisp tradition of maintaining a tight bond to its roots in the formal logic of mathematics. And, like Lisp, it presents itself as a strict functional language.

Haskell has versatile syntax, allowing many different representations of any expression. It also supports high-order functions, or functions of functions. You'll also find a Prolog-like pattern matching facility (without the full capacity of Prolog's unification engine), which enables some kinds of overloading. The language supports "modules" as well, a limited kind of scoping mechanism intended to support programming in the large.

If "functional" programming is a term you haven't heard before, it means that, ideally, a program runs entirely in terms of expression evaluations without side effects - the program has no state except for transient state on its stack. This ultimately makes it a poor match to the real world. Even the ideas of storing a Haskell program on disk and holding its output pixels on screen violate the stateless paradigm, since that storage would be long-lived state. In the end, a functional programming language must violate its stateless purity to be relevant to commercial problem solving, or must leave state management to some part of the system outside of the language. The latter doesn't really solve the problem of state, it simply pushes the problem around - i.e. to some other programming language.

Haskell is an interesting exercise in language design, embodies many useful concepts from formal logic, and gives up many of the features that make it difficult to reason about programs in rigorous ways.
Read more ›
5 Comments 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

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 Systems Using Haskell (Cambridge Computer Science Texts)
This item: Introduction to Functional Programming Systems Using Haskell (Cambridge Computer Science Texts)
Price: $53.77
Ships from and sold by Amazon.com

Want to discover more products? Check out these pages to see more: software engineering, object oriented design