Amazon.com: Expert F# (Expert's Voice in .NET) (9781590598504): Antonio Cisternino, Adam Granicz, Don Syme: Books
Expert F# 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
More Buying Choices
Have one to sell? Sell yours here
Expert F# (Expert's Voice in .NET)
 
 
Start reading Expert F# on your Kindle in under a minute.

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

Expert F# (Expert's Voice in .NET) [Hardcover]

Antonio Cisternino (Author), Adam Granicz (Author), Don Syme (Author)
4.0 out of 5 stars  See all reviews (23 customer reviews)

List Price: $79.99
Price: $56.46 & this item ships for FREE with Super Saver Shipping. Details
You Save: $23.53 (29%)
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 7 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 $42.00  
Hardcover $56.46  

Book Description

December 10, 2007 1590598504 978-1590598504 1

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 user interface 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!

What you’ll learn

  • How to use F# for functional, imperative, and object–oriented programming
  • How to code elegant F# solutions with expert technique and style
  • How to develop Windows, web, graphics, and database applications in F#
  • How to do numerical, concurrent, lexical, and symbolic processing in F#
  • How to interoperate with C and COM

Who this book is for

This book is for anyone interested in state–of–the art .NET programming. Professional programmers will find it engrossing. F# provides invaluable insight into the future of both C# and VB, which are now adopting some (but far from all) of the functional features of F#. Once they learn F#, few feel like returning to either C# or VB. The academic community will find F# the answer to a decades–long prayer: a language suitable for teaching computer science that also excites and empowers students because it can be used not just in the classroom, but also in the real world.


Frequently Bought Together

Expert F# (Expert's Voice in .NET) + Foundations of F# (Expert's Voice in .NET) + Programming F#: A comprehensive guide for writing simple code to solve complex problems (Animal Guide)
Price For All Three: $133.13

Show availability and shipping details

Buy the selected items together

Customers Who Bought This Item Also Bought


Editorial Reviews

About the Author

Antonio Cisternino is assistant professor in the computer science department of the University of Pisa, Italy. His primary research is on meta-programming and domain-specific languages on virtual-machine-based execution environments. He has been active in the .NET community since 2000. He recently developed VSLab, a Visual Studio add-in designed to add the ability of creating dynamic tool-windows, and he also contributed to the development of Octopus, a scheduler of virtual machines running on Hyper-V. He teaches F# in the Programming Graphical Interfaces course at the University of Pisa. Antonio has a Ph.D. in computer science from the University of Pisa.

Adam Granicz is the chief executive officer of IntelliFactory, the leading provider of F# training, development and consulting services, and technologies that enable rapid functional, reactive web development. He has over six years of experience applying F# in commercial projects, and works on WebSharper, IntelliFactory's web development platform that offers unrivaled productivity, a uniform programming model based on F#, and the fastest way to develop robust, client-based rich Internet applications. Adam is an active F# evangelist, a regular author in online F# media and speaker at development conferences and industry partners, and serves on the steering committee of the Commercial Users of Functional Programming (CUFP) Workshop, representing the F# segment.

Don Syme is a principal researcher at Microsoft Research, and the main designer of F#. Since joining Microsoft Research in 1998, he has been a seminal contributor to a wide variety of leading-edge projects, including generics in C# and the .NET Common Language Runtime, F# itself, F# asynchronous programming and units of measure in F#. He received a Ph.D. from the University of Cambridge Computer Laboratory in 1999.

Product Details

  • Hardcover: 609 pages
  • Publisher: Apress; 1 edition (December 10, 2007)
  • Language: English
  • ISBN-10: 1590598504
  • ISBN-13: 978-1590598504
  • Product Dimensions: 9.4 x 7.2 x 1.5 inches
  • Shipping Weight: 2.5 pounds (View shipping rates and policies)
  • Average Customer Review: 4.0 out of 5 stars  See all reviews (23 customer reviews)
  • Amazon Best Sellers Rank: #857,839 in Books (See Top 100 in Books)

More About the Author

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

 

Customer Reviews

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

16 of 16 people found the following review helpful:
4.0 out of 5 stars The Good, The Bad, The (not so) Ugly, January 5, 2008
By 
This review is from: Expert F# (Expert's Voice in .NET) (Hardcover)
The Good

- Practical.

- High example density.

- Broad coverage of a lot of practical F# topics.

- Good depth on all the important practical stuff.

- I felt like I learned a lot, not only about F#, but about some cool C# features too.

- I felt like I'd be a lot more productive as a programmer if I could master the language.

The (not so) Bad

- Structurally, I initially got lost with some of the more complex examples. And it was straining to page back and forth re-reading things until I grasped the concepts. The density of information in the text sometimes makes it less valuable as a teaching aid and more valuable as a reference.

The (not so) Ugly

- I could not get one of the async examples to actually compile. I had to search the web for some hints to add declarations that seem to have been omitted from either the example code or F# implementation itself. In short, the example code, my development environment, F# itself, of some combination thereof was missing what appears to be an extension method for WebRequest.GetResponseAsync. I had to code it myself. But once I did, it worked! (This might not be a criticism of the book.)
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


21 of 23 people found the following review helpful:
5.0 out of 5 stars Perfect companion for your F# adventure!, December 3, 2007
This review is from: Expert F# (Expert's Voice in .NET) (Hardcover)
This book is the perfect companion to bring along on your adventure into the world of F#! I had the pleasure of proofreading Expert F# several months ago and so, while it just became available at Amazon today, I've already spent many happy hours with it.

F# is a wonderfully expressive and practical language and, at the same time, very elegant. This book will help the reader to apply this newfound power and to appreciate how even the most obscure features all seem to "hang together" so beautifully.

The first half of the book teaches the language with an excellent example-driven approach; making it fun and useful from the start. Separate chapters cover each supported programming paradigm: functional, imperative, object-oriented and language-oriented; along with chapters on solid engineering techniques such as encapsulation and packaging, and working well with other .NET code.

The second half of the book applies the language to various technologies (WinForms, web, database, ...) and to various very interesting domains including lexing and parsing, asynchronous and concurrent programming (a particularly strong suit). My absolute favorites were the symbolic differentiation and propositional logic samples in chapter 12 - these left me in a state of awe! Also, the second half covers more engineering concerns such as testing and debugging, interop and library design.

Throughout the book are sprinkled many little nuggets of wisdom from the authors; especially helpful to those who (like me) are struggling to rationalize experience in OO and imperative programming with the functional mindset.

The book contains an enormous amount of information; an essentially complete coverage of the language. However, it simply can't cover everything. Some topics missing include application to some specific technologies such as WPF and Silverlight. Also, functional data structures and meta-programming (with the extremely powerful F# quotations mechanism) are only lightly covered.

It's a very well written and well organized book. It makes for a great read when you're first mastering the language and makes for a great reference to keep on your shelf thereafter.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


15 of 18 people found the following review helpful:
5.0 out of 5 stars Truly worthy of its title, January 14, 2008
By 
Andrei Formiga (Joao Pessoa, Brasil) - See all my reviews
(REAL NAME)   
This review is from: Expert F# (Expert's Voice in .NET) (Hardcover)
When a new programming language arrives and manages to make an impact, books about it will certainly appear. However, most often the books will be geared to beginners, to people that is either not very experienced in programming or in the programming paradigms embodied by the language. For a experienced programmer, these books stop right when the fun would begin: the advanced stuff, the corners, the details are left out.

Expert F#, as suggested by its title, is not like this: it is aimed at more experienced programmers. The book will not teach you, for instance, what is functional programming or hammer to your head the best ways to use lists, an ubiquitous data structure in functional languages. But it explains how the things work in F#, so that programmers already familiar with other functional languages will have no trouble picking it up. F# also has object-oriented capabilities, which are explained in a chapter, without however going much deep into OO concepts; the book is about the language, not the paradigms.

And it does this well. Roughly half of the book is about the language itself, the other half are examples of applications and how to use some important libraries. As I was already familiar with OCaml and Haskell, I mostly skimmed through chapters 1 to 4, reading more closely starting with chapters 5 (generic types) and 6 (how objects fit into F#). From chapter 7 (encapsulating and packaging your code) on, the book starts to get really interesting; the next one is about common techniques, and chapter 9 is the best in the first part, explaining language-oriented programming, an area where functional languages really shine.

There are mandatory chapters about Windows Forms (11), Web programming (14) using .NET and data access, including how to use LINQ in F#, but I really liked chapters 12 (working with symbolic representations), and 13 (concurrency and asynchronous workflows). The former includes two cool examples: a symbolic differentiator and a verifier for logic circuits based on BDDs (Binary Decision Diagrams). There are other important and advanced chapters treating topics like interoperation with C and COM, debugging and testing F# programs, and F# library design.

All in all a very good book about the best current functional language to use in the Windows platform. I have two minor quibbles about it, though: the first few chapters about the language really could be made more interesting (although it didn't affect me much, as I only skimmed them) and some of the more exciting new features of F# could be explained in more detail. Specifically, workflows and active patterns. They are quite recent additions to the language, however, and there is some additional material promised to feature in the book's site.

Anyway, I will keep this book nearby when programming in F#. It is this kind of book that you'd want to keep around, even after learning the language.
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)
Key Phrases - Statistically Improbable Phrases (SIPs): (learn more)
graph style, platform invoke, protected mode, stmt list, library design guidelines, light syntax option, sym opt, object interface types, generic hashing, workflow syntax, comment lexbuf, using generic comparison, lookaside table, accessibility annotations, bool vol, lexeme lexbuf, token lexbuf, using sequence expressions, immutable data structures, asynchronous workflow, lexing and parsing, generated lexer, mutable locals, lazy values, fun args
Key Phrases - Capitalized Phrases (CAPs): (learn more)
Visual Studio, Program Files, Hello World, Common Language Runtime, Microsoft Corporation, John Smith, British Museum, Visual Basic, Internet Explorer, Server Express, Web Tools, Server Explorer, Flash Player, Composite of Scene, Page Language, Software Developer, Courier New, Using Further, Extension Type Language Characteristics, Pine Road, Background Worker, Hiding Things, Reference Assemblies, Values Member, Integrated Security
Browse Sample Pages:
Front Cover | Table of Contents | First Pages | Index | 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.
 
(22)
(12)
(1)
(1)

Your tags: Add your first tag
 

Customer Discussions

This product's forum
See all 2 discussions...  
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
   
Related forums



So You'd Like to...

Create a guide


Look for Similar Items by Category


Look for Similar Items by Subject