Advanced Search
Start Your Free Trial

Overview

Other Readers Also Read...

Top Sellers in this Category

Expert F# is about practical programming in a beautiful language that puts the power and elegance of functional programming into the hands of .NET developers. In combination with .NET, F# achieves unrivaled levels of programmer productivity and program clarity. This books serves as

  • The authoritative guide to F# by the designer of F#

  • A comprehensive reference of F# concepts, syntax, and features

  • A treasury of expert F# techniques for practical, real-world programming

While inspired by OCaml, F# isn't just another functional programming language. Drawing on many of the strengths of both OCaml and .NET, it's a general-purpose language ideal for real-world development. F# integrates functional, imperative, and object-oriented programming styles so you can flexibly and elegantly solve programming problems, and brings .NET development alive with interactive execution. Whatever your background, you'll find that F# is easy to learn, fun to use, and extraordinarily powerful. F# will help change the way you think about and go about programming.

Written by F#'s designer and two active contributors, Expert F# is the authoritative, comprehensive, and in-depth guide to the language and its use. Designed to help others become experts, the book gives a thorough introduction to the F# language from quick essentials to in-depth advanced topics such as active pattern matching, aggregate data types and operators, sequence expressions, lazy values, mutable data and side-effects, generics, type augmentations, functional decomposition and code organization.

The second half of the book is devoted to examining the practical application of F#, providing elegant solutions to common programming tasks including UI implementation, data access, web and distributed programming, symbolic and numerical computations, concurrent programming, testing, profiling, and interoperability with other languages. The latest hot developments in F# and .NET are also addressed, including Active Patterns, implicit class construction, integration with LINQ over relational data, meta programming and useful tips for working with Visual Studio and F# command-line tools.

The worlds foremost experts in F# show you how to program in F# the way they do!

Amazon.com® Reader Reviews (Ranked by Helpfulness)

Average Amazon.com® Rating: 4.0 out of 5 rating Based on 19 Ratings

Study OCaml First!! - 2009-06-11
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
F# is basically OCaml for .net. This book covers details of F# for .net. However I felt confused about some syntax of F# which this book does not explain clearly. After looked up tutorials for OCaml on the internet, I found there are materials which can help you to better understand fundamentals of OCaml(F#). If you are new to F#, make sure you go through several OCaml tutorials first before you start exploring this book.

Excellent overview of the F# language - 2009-11-14
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
Expert F# is an excellent book to get you familiarized with F#. If you've never done any functional programming, this book may not be the best for learning the functional style. However, since F# is such a versatile language, it's a great way to start with an imperative style and eventually move slowly over to the functional style. I think functional programming is a great way to write programs since it is a lot more expressive and you can get a lot more done with a lot less code.

With F# running on the .NET framework, you immediately get seamless integration with all the other .NET languages and access to tons of existing .NET libraries. Multi-threaded programming is becoming more and more important and F# has many features which aid the developer in writing massively parallel applications. Immutability is a very powerful feature and definitely frees the developer from using locks to access shared data. One of the best features of F# is the asynchronous workflow (Chapter 13) which allows you to describe your asynchronous computations without worrying about threading issues.

Expert F# provides a brief overview of functional programming and imperative/object-oriented programming with F#. Experienced developers should have no problem picking up F# concepts. If you are a beginner, I suggest you get an introduction to functional programming via the web or books before you dive into this book.
The book also introduces you to concepts such as language oriented programming, which allows you to create a somewhat "mini language" which you would then use to write a program. A chapter on working with symbolic representations explains how to use F# for processing various expressions. There is also a chapter on lexing and parsing with F# which you can use to create your own languages. Other parts of the book also cover how to work with data, building web applications, interoperability, debugging and testing.

Overall, this book is great reference and also great to learn from. I read the book cover to cover and understood most of the concepts (I'm not a very experienced programmer). After reading the book I started to write simple programs, trying to use many of the F# features, to really learn the language and use the book as a reference. This is the first great F# reference I found, other books that I've read were very introductory. I really like this book because it covers a lot of topics which really shows a variety of ways that F# can be used for.

Nice Place to Start Learning F# - 2009-10-05
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
As someone who currently works with C# and .net, I was excited to learn about F# and functional programming.

Looking for a book to get started with the language, I chose Expert F#.
I found this book to be well written and concepts clearly explained.

One thing you find is that as a mixed-paradigm language, there are many different ways to attack a problem in F#.
Expert F# helps guide you through these decisions by giving suggestions on where to use functional techniques and where to use imperative programming techniques.

It also does a great job of showing how to use the existing .net libraries from F#.

My only complaint is that the book doesn't quite emphasize functional programming strongly enough. So, if you aren't familiar with functional algorithms and such you may need to supplement this text with an additional book.








Assumes Experience with Functional Programming - 2009-06-13
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
This book states in the beginning that you don't have to know functional programming in order to understand the material. I would argue that this is not true.

I've taken a course in functional programming and so not much was new to me. Having read some of the other reviews, I realised that the book is not very friendly to people who are professional programmers with no past experience of functional programming (though you could argue that one cannot be a professional programmer without such experience!).

That said, this book covers so many different topics in addition to the core concepts of the language. This shows you, time and time again, how you can use F#. It gives you plenty of ideas. So, this book is really good, no doubt about that.

A solid reference, and a pleasure to read - 2009-05-31
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
Reviewer's background - some academic work in functional programming (Lisp), and 23 years as a developer in the aerospace business (Ada, C++, etc).

Of all the computing books I've purchased over the years, I would rate this as one of the finest. It has that very rare combination of: working as reference for a language; exposing most of the "real world" uses of it; and also being a pleasure to read. I call it a pleasure, not because it has any great humour or anecdotes, but because the authors' style exposes the beauty of the subject in a way that appeals to programmers who love their craft.

As others have said, the structure of the book works very well. The first half explains all the language constructs, and the second shows the how to use the language in the .Net world - web apps, databases, etc.

What I like most about the style is that it is both succinct, and readable. One can sense the authors working to keep the book down to 600 pages, while providing the essential reference details, and sharing their most important insights into F# and software in general. They achieve this mostly through the carefully arranged examples, and informal "tips". Whenever I look at an example for a particular purpose (eg. a database interface) I see F# constructs being used that also demonstrate something else about the language - to explain all these points would make the book unmaneagable, so it's up to the reader to observe and learn as they read.

The two negative reviews of this book do make a valid point - that this book isn't good for learning functional programming. Its scope is too large to concentrate on the actual skill of writing functional programs (apart from the expert tips). If I could improve it in one way, I would have a set of sample problems at the end of each chapter, with the solutions available online.


The book also has an optional e-book for $10. I strongly recommend it. I use both the hard copy, and the e-book (but mostly the e-book).

Some information on this page was provided using data from Amazon.com®. View at Amazon >


About Safari Books Online • Terms of Service • Privacy Policy • Contact Us • Corporate Licenses • Help • Accessibility | See us on FacebookSee us on Linked InSee us on TwitterRSS

Copyright 2009 Safari Books Online. All rights reserved.