Amazon.com: Programming F#: A comprehensive guide for writing simple code to solve complex problems (Animal Guide) (9780596153649): Chris Smith: Books
Programming F# (Animal Guide) and over one million other books are available for Amazon Kindle. Learn more


or
Sign in to turn on 1-Click ordering.
or
Amazon Prime Free Trial required. Sign up when you check out. Learn More
Kindle Edition
 
   
More Buying Choices
Have one to sell? Sell yours here
Programming F#: A comprehensive guide for writing simple code to solve complex problems (Animal Guide)
 
 
Start reading Programming F# (Animal Guide) on your Kindle in under a minute.

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

Programming F#: A comprehensive guide for writing simple code to solve complex problems (Animal Guide) [Paperback]

Chris Smith (Author)
4.7 out of 5 stars  See all reviews (19 customer reviews)

List Price: $44.99
Price: $31.65 & this item ships for FREE with Super Saver Shipping. Details
You Save: $13.34 (30%)
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.
Only 3 left in stock--order soon (more on the way).
Want it delivered Monday, February 27? Choose One-Day Shipping at checkout. Details
Textbook Student FREE Two-Day Shipping for students on millions of items. Learn more

Formats

Amazon Price New from Used from
Kindle Edition $25.19  
Paperback $31.65  
Like this book? Find similar titles in the O'Reilly Bookstore.

Book Description

October 20, 2009 0596153643 978-0596153649 1

Why learn F#? This multi-paradigm language not only offers you an enormous productivity boost through functional programming, it also lets you develop applications using your existing object-oriented and imperative programming skills. With Programming F#, you'll quickly discover the many advantages of Microsoft's new language, which includes access to all the great tools and libraries of the .NET platform.

Learn how to reap the benefits of functional programming for your next project -- whether it's quantitative computing, large-scale data exploration, or even a pursuit of your own. With this comprehensive guide, F# team member Chris Smith gives you a head start on the fundamentals and advanced concepts of the F# language.

  • Get a clear understanding of functional programming, and how you can use it to simplify code
  • Gain a solid understanding of the language's core syntax, including object-oriented and imperative styles
  • Simplify concurrent and parallel programming with F# Asynchronous Workflows and the Parallel Extensions to .NET
  • Learn advanced F# concepts, such as quotations and computation expressions


"This book emphasizes simple, clear explanations of the foundational elements of F#, always with an eye on the enjoyment that comes from programming in general, and programming with F# in particular." Don Syme, Principal Researcher and F# Designer, Microsoft Research

Frequently Bought Together

Programming F#: A comprehensive guide for writing simple code to solve complex problems (Animal Guide) + Real World Functional Programming: With Examples in F# and C# + Expert F# 2.0 (Expert's Voice in F#)
Price For All Three: $119.13

Show availability and shipping details

Buy the selected items together
  • In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • Real World Functional Programming: With Examples in F# and C# $31.49

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

  • Expert F# 2.0 (Expert's Voice in F#) $55.99

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



Editorial Reviews

About the Author

Chris Smith works at Microsoft on the F# team. His role as a software design engineer in test gives him a unique mastery of the F# language. Chris has a masters degree in computer science from the University of Washington.

You can read his blog, Chris Smith's Complete Unique View, at http://blogs.msdn.com/chrsmith/.


Product Details

  • Paperback: 408 pages
  • Publisher: O'Reilly Media; 1 edition (October 20, 2009)
  • Language: English
  • ISBN-10: 0596153643
  • ISBN-13: 978-0596153649
  • Product Dimensions: 9.1 x 7.1 x 0.9 inches
  • Shipping Weight: 1.2 pounds (View shipping rates and policies)
  • Average Customer Review: 4.7 out of 5 stars  See all reviews (19 customer reviews)
  • Amazon Best Sellers Rank: #208,338 in Books (See Top 100 in Books)

More About the Author

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

 

Customer Reviews

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

27 of 28 people found the following review helpful:
5.0 out of 5 stars Easiest F# Book Available, November 10, 2009
Amazon Verified Purchase(What's this?)
This review is from: Programming F#: A comprehensive guide for writing simple code to solve complex problems (Animal Guide) (Paperback)
As of Nov 2009, this is probably the easiest book out there on F#. Chris Smith doesn't approach the book assuming prior functional programming knowledge. He avoids getting overly complicated or using difficult terms. There was no point in the book where my eyes glossed over because it got too hard to follow.

The book is split into two parts. The first part is a mainly a run through all of the F# syntax, getting you setup and writing F# code quite quickly. Even though I've been using F# for a couple of years, I still picked up a few new things. It's a book you can use as a reference for parts of the language, even though the actual product documentation is coming together. Of note is the section on lists, which I found particularly clear and easy to follow.

The second part of the book is where Mr. Smith takes it up a notch. The book says it's "applied" F# programming, which in many programming books means the author is about to go over some common APIs for you. Not so in this book. The second part shows some of the very powerful and practical things you can do with F#. The introduction to workflows (computation expressions) was excellent; I don't believe I've seen an easier-to-understand explanation for those who haven't dealt with such constructs before (and there's no use of the dreaded word "monad"!).

What really surprised me was that this book follows up on workflows with a great section on quotations. Not only does it give an overview of what they are, but it provides enough depth so that you can actually start processing and manipulating quotations right away.

Even the appendix is worth reading, as there's a part on F# interop. While F# runs on the CLR, there are certain constructs in F# that won't necessarily look pretty in C#. The appendix goes over how to avoid those problems and make clean ".NET-friendly" APIs.

Overall, I'm quite content with the book. It's a good purchase, even for an experienced F# user. If you're trying to learn F#, and don't have a functional background, this is the book to start with.

As a note, the content doesn't overlap excessively with "Functional Programming for the Real World". So if you're considering both, you won't be disappointed. They're actually so complementary, I'm not sure which one is better if you can only get one.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


24 of 27 people found the following review helpful:
3.0 out of 5 stars Explains "how" but not "why", "where", or "when", May 1, 2010
This review is from: Programming F#: A comprehensive guide for writing simple code to solve complex problems (Animal Guide) (Paperback)
If you are looking to dip your toes into F#, this book is a good reference. Unlike any of the other reviewers here, this is my first experience with F# or an F# book other than a brief Fib generator when the first F# CTP was released. The fact is, I have a strong interest in F#. I learned Scheme ages ago (nearly 20 years ago, now that I think about it) and enjoyed it for what I did, so I am not a total stranger to functional programming. But if you've never used functional programming before, this book really does not explain where it is better or how to really take advantage of it. Sure, it shows you at a syntactic level how to use F#'s functional features. But if you want to improve your application by using functional programming, this book isn't going to help you unless you are already well versed in functional programming. To be honest, I was extremely disappointed.

The parts on object oriented programming and interfacing with other .NET code make F# look positively miserable. All too often, it seems like I would not want to use F# for anything other than taking a set of primitive values in and spitting a primitive out if I ever need to interface with other .NET code. I don't know if this is a fair assessment of F#, but it is the impression that this book gave me. By focusing so much on things that F# is not great at and largely ignoring things that it should be good for (for example, why was there never an example of walking a tree *in parallel*?!?!), I came away feeling like F# is just a very fancy replacement for the switch/case system.

This book *is* well written and clear. Unfortunately, F# is a symbol heavy language and the author tends to explain a symbol once and assume that you understand it and why he chose it over something else, which made following the examples very hard. All the same, I was grateful that the author didn't rely on understanding highly technical ideas (continuations, memoization, etc.), and at the same time did a very good job at explaining them as they came up, and even gave some good examples.

If you are someone (like the other reviewers) who are already familiar with functional programming as a concept and want to learn how to do it within F# and the .NET ecosystem, this is the book for you. If you are not that person, this book won't help you beyond the F# syntax itself. I am going to check out "Real World Functional Programming" and see if it has the parts missing from this book.

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


11 of 13 people found the following review helpful:
5.0 out of 5 stars Ladies and Gentlemen, this is the book !, November 19, 2009
By 
PC (Seattle, WA) - See all my reviews
This review is from: Programming F#: A comprehensive guide for writing simple code to solve complex problems (Animal Guide) (Paperback)
It has been a long time since I got excited about a programming book as much as I did with Programming F#. I have all the books on F# available in the market today(including the Manning MEAP - Functional Programming for the Real World: With Examples in F# and C#. But I should say that this is the best book for learning F# if you have no experience with functional programming. I am not sure how this book would be for a person who is totally new to programming (chances are they would find this ahead of their curve). But for a person who has good experience with imperative programming this book would get you up and running with F# in specific and functional programming in general.

The book by Don Syme Expert F# (Expert's Voice in .Net) (who invented F#) is also good but not as good as Programming F# for new functional programmers. But once you have read this book, Don Syme's book might be a good follow up.

The strongest point of this book is the clarity with which concepts are explained and the choice of good examples to explain a concept. They are concise and to the point. It also made the book surprisingly small (at a little less than 400 pages). But no worries, everything that you need to get a firm footing in F# is in here.

This is truly a 5 star book. Highly recommended.

The table of contents:

Part I. Multiparadigm Programming

Chapter 1. Introduction to F#

Chapter 2. Fundamentals

Chapter 3. Functional Programming

Chapter 4. Imperative Programming

Chapter 5. Object-Oriented Programming

Chapter 6. .NET Programming

Chapter 7. Applied Functional Programming

Chapter 8. Applied Object-Oriented Programming

Part II. Programming F#

Chapter 9. Scripting

Chapter 10. Computation Expressions

Chapter 11. Asynchronous and Parallel Programming

Chapter 12. Reflection

Chapter 13. Quotations

Appendix A. Overview of .NET Libraries

Appendix B. F# Interop

Index
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)
Browse Sample Pages:
Front Cover | Table of Contents | First Pages | Index | Back Cover | Surprise Me!
Search Inside This Book:

What Other Items Do Customers Buy After Viewing This Item?


Tags Customers Associate with This Product

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

Your tags: Add your first tag
 

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
 


Active discussions in related forums
Search Customer Discussions
Search all Amazon discussions
   
Related forums



So You'd Like to...


Create a guide


Look for Similar Items by Category


Look for Similar Items by Subject