Buy New

or
Sign in to turn on 1-Click ordering.
or
Amazon Prime Free Trial required. Sign up when you check out. Learn More
Buy Used
Used - Good See details
$52.93 & this item ships for FREE with Super Saver Shipping. Details

or
Sign in to turn on 1-Click ordering.
 
   
More Buying Choices
Have one to sell? Sell yours here
The Functional Approach to Programming
 
 
Tell the Publisher!
I'd like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

The Functional Approach to Programming [Paperback]

Guy Cousineau (Author), Michel Mauny (Author), K. Callaway (Translator)
4.2 out of 5 stars  See all reviews (4 customer reviews)

List Price: $72.00
Price: $62.27 & this item ships for FREE with Super Saver Shipping. Details
You Save: $9.73 (14%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.
Want it delivered Monday, January 30? Choose One-Day Shipping at checkout. Details

Formats

Amazon Price New from Used from
Hardcover --  
Paperback $62.27  

Book Description

October 29, 1998
A programming course should concentrate on a program's logical structure and design rather than on simply writing code. The functional approach to programming achieves this aim because logical concepts are evident and programs are transparent, and so can be written quickly and cleanly. In this book, the authors emphasize the notions of function and relate programming to familiar concepts from mathematics and logic. They introduce functional programming via examples but also explain what programs compute and how to reason about them. They show how the ideas can be implemented in the Caml language, a dialect of the ML family, and give examples of how complex programs from a variety of areas (such as arithmetic, tree algorithms, graph algorithms, text parsing and geometry) can be developed in close agreement with their specifications. Many exercises and examples are included throughout the book; solutions are also available. An appendix gives all the code used in the book in Standard ML.

Frequently Bought Together

Customers buy this book with Java In A Nutshell, 5th Edition $26.97

The Functional Approach to Programming + Java In A Nutshell, 5th Edition
  • This item: The Functional Approach to Programming

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • Java In A Nutshell, 5th Edition

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details



Editorial Reviews

Review

"...a valuable contribution to programming practice...Cousineau and Mauny convincingly demonstrate the elegance and conciseness of the functional approach." Computing Reviews

Book Description

In functional programming, logical concepts are evident and programs are transparent so can be written quickly and cleanly. The authors introduce the subject via examples and explain what programs compute and how to reason about them. They show how the ideas can implemented in Caml, a dialect of ML, and give examples of how complex programs from various areas can be developed in close agreement with their specifications.Many exercises and examples are included throughout the book; solutions are also available. An appendix gives all the code used in the book in Standard ML.

Product Details

  • Paperback: 460 pages
  • Publisher: Cambridge University Press; English Ed edition (October 29, 1998)
  • Language: English
  • ISBN-10: 0521576814
  • ISBN-13: 978-0521576819
  • Product Dimensions: 9.7 x 6.9 x 1 inches
  • Shipping Weight: 2.1 pounds (View shipping rates and policies)
  • Average Customer Review: 4.2 out of 5 stars  See all reviews (4 customer reviews)
  • Amazon Best Sellers Rank: #11,575 in Books (See Top 100 in Books)

More About the Author

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

 

Customer Reviews

4 Reviews
5 star:
 (2)
4 star:
 (1)
3 star:
 (1)
2 star:    (0)
1 star:    (0)
 
 
 
 
 
Average Customer Review
4.2 out of 5 stars (4 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

25 of 25 people found the following review helpful:
4.0 out of 5 stars Great Book on Functional Programming, June 15, 2000
By 
Brent Fulgham (Ventura, CA United States) - See all my reviews
(REAL NAME)   
This review is from: The Functional Approach to Programming (Paperback)
Functional programming requires a much different mindset than standard "procedural" languages such as C, Perl, Python, and others. This book does an excellent job of teaching the reader about these concepts.

The language of choice (CAML) used in this book requires some effort to learn. Certain elements of its syntax are non-obvious, and the internal type checking can be irritating until you learn that the rigorous checks result in safer programs. (An interesting side-note is that OCaml, compiled to native code, is in most cases very nearly identical in speed to straight C. Visit http://caml.inria.fr for details).

This is not an easy book. I found myself flipping to prior chapters to reread sections that I thought I understood on the first pass, but had not. This is no fault of the author, but rather the of the unfamiliar nature of the territory covered.

This book covers a lot of ground. As the other reviewer indicates, if you liked SICP, you will like this book. It covers a lot of the same ground, and provides an excellent grounding in various data structures and so forth.

One final note. Although the book is a translation from French, I found the english to be perfect. There were no slips into incorrect syntax or confusing idioms. My hat's off to the editor/translator.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


25 of 27 people found the following review helpful:
5.0 out of 5 stars A wonderful introduction to (functional) programming, February 23, 1999
By A Customer
I read the french edition of that book and found it to be one of the best book about (functional) programming I know. The authors first quickly introduce the CAML language (an ML variant) and then proceed with real-world examples. The reader will for example learn how to manipulate arbitrary-precision numbers, how to compile regular expressions or how to solve some common games. If you've read and liked Abelson and Sussman's "Structure and Interpretation of Computer Programs", you'll like that book too. I strongly recommend it to anybody interested in CAML or SML, or in functional programming.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


20 of 22 people found the following review helpful:
3.0 out of 5 stars Good on examples of the functional approach to algorithms, October 8, 2002
This review is from: The Functional Approach to Programming (Paperback)
I have not much to add to the other two reviews.

I've read "Structure and Interpretation of Computer Programs" (SICP), and like many others found it one among the best if not *the best* computerbook I've ever read. I think that "The Functional Approach to Programming" differs a lot from SICP. This is not to say, that it's bad, rather that I think it's very different from SICP. Its focus is much more on semantics (ML of course, not Scheme), correctness (in the scientific sense) and algorithms.

It offers plenty on the functional approach to implementing algorithms like trees and sets. The semantics are elaborated in a clear and concise style, that I've been able to track even though I have no degree in computer science at all (I'm just an auto didact from "the street").

For someone not familiar with functional programming like me, I find this very good. I have a background in C, Java, C++ moving toward more highlevel languages like Scheme, Lisp, Ruby, SmallTalk and Python in the latter years.

It is very succinct with plenty of code examples like SICP. The code doesn't fill too much, since the functional style is a lot shorter for solving complex problems than the equavalent imperative program examples I've seen in C++ and Java. The focus is on the scientific correct thing to do, rather than a more ad hoc focus on "best practices" giving way to a more firm ground for choosing style and algorithms to solve a particular problem. The "best practices" are there of course, but in a transparent way, like small paradigms of code (somewhat like Peter Norvig's "Paradigms of Artificial Intelligence Programming - Case Studies in Common Lisp").

Just to make it clear: I don't think it's fair to compare it with SICP, although their subjects overlap somewhat. Its vocabulary differs significantly from both SICP and the terminology used in OO and Design Patterns land. This is bad in the sense in makes it unnecessary hard to learn the basics.

However, if you haven't dealt with functional programming before, you're of course going to encounter the usual paradigm shifting problems. I now find my self thinking a whole new and rather refreshing way about programs. It does pay off, even though it certainly helped that I had read SICP and a lot of articles on the subject at first.

Even if I'm never going to use functional programming in my professional life, I've now got a better grasp of algorithms -- what, when and how to use them. It's simply easier to reason about them using the functional approach.

By the way: The english translation *is* perfect.

Should you read it? I think you should, but prepare yourself to use some time to understand new concepts if you're not familiar with the nomenclature of the functional programming community. Even though it's not easy, I still think it pays off.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews


Only search this product's reviews



Inside This Book (learn more)
First Sentence:
Functional programming is a style that use the definition and application of functions as essential concepts. Read the first page
Key Phrases - Statistically Improbable Phrases (SIPs): (learn more)
orelse empty, type btree, list hom, char stream, type exn, digit nat, nat base, int const, char list, eval env, bool const, int list, pos moves, red donkey, type expr, construction fun, delayed evaluation, imperative aspects, memory zone, comp env, token stream, type synthesizer, more conventional languages, syntactic analyzers, type synthesis
Key Phrases - Capitalized Phrases (CAPs): (learn more)
Basic Principles, Dec Right, Representing Sets
New!
Books on Related Topics | Concordance | Text Stats
Browse Sample Pages:
Front Cover | Table of Contents | First Pages | Index | Back Cover | Surprise Me!
Search Inside This Book:





Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 
(2)
(2)

Your tags: Add your first tag
 

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 

Search Customer Discussions
Search all Amazon discussions
   



So You'd Like to...



Look for Similar Items by Category


Look for Similar Items by Subject