Expert F# 2.0 is about practical programming in a beautiful language that puts the power and elegance of functional programming into the hands of professional developers. In combination with .NET, F# achieves unrivaled levels of programmer productivity and program clarity.
Expert F# 3.0 is about practical programming in a beautiful language that puts the power and elegance of data-rich functional programming into the hands of professional developers. In combination with .NET, F# achieves unrivaled levels of programmer productivity and program clarity.
F# isn't just more » another functional programming language. It's a general-purpose language ideal for solving real-world development problems. F# seamlessly integrates functional, imperative, object-oriented and query programming styles so you can flexibly and elegantly solve any programming problem. « less
Learn from F#'s inventor to become an expert in the latest version of this powerful programming language so you can seamlessly integrate functional, imperative, object-oriented, and query programming style flexibly and elegantly to solve any programming problem. Expert F# 4.0 will help you achieve unrivaled more » levels of programmer productivity and program clarity across multiple platforms including Windows, Linux, Android, OSX, and iOS as well as HTML5 and GPUs.
F# 4.0 is a mature, open source, cross-platform, functional-first programming language which empowers users and organizations to tackle complex computing problems with simple, maintainable, and robust code.
Expert F# 4.0 is:
* A comprehensive guide to the latest version of F# by the inventor of the language
* A treasury of F# techniques for practical problem-solving
* An in-depth case book of F# applications and F# 4.0 concepts, syntax, and features
Written by F#'s inventor and two major F# community members, Expert F# 4.0 is a comprehensive and in-depth guide to the language and its use. Designed to help others become experts, the book quickly yet carefully describes the paradigms supported by F# language, and then shows how to use F# elegantly for a practical web, data, parallel and analytical programming tasks.
The world's experts in F# show you how to program in F# the way they do! « less
F# Deep Dives presents a collection of real-world F# techniques, each written by expert practitioners. Each chapter presents a new use case where you'll read how the author used F# to solve a complex problem more effectively than would have been possible using a traditional approach. You'll more » not only see how a specific solution works in a specific domain, you'll also learn how F# developers approach problems, what concepts they use to solve them, and how they integrate F# into existing systems and environments.
About the Technology
F# is an elegant, cross-platform, functional-first programming language. With F#, developers create consistent and predictable programs that are easier to test and reuse, simpler to parallelize, and less prone to bugs. The language, its tooling, and the functional programming style have proven effective in many application areas like secure financial engines, machine learning algorithms, scientific calculations, collaborative web applications, games, and more.
About the Book
F# Deep Dives is a selection of real-world F# techniques written by expert practitioners. Each chapter presents an important use case where you'll solve a real programming challenge effectively using F# and the functional-first approach. Not only will you see how a specific solution works in a specific domain, but you'll also learn how functional programmers think about problems, how they solve them, and how they integrate F# into existing systems and environments.
Readers should have at least an introductory knowledge of the F# language.
* Numerical computing
* Data visualization
* Business logic
* Domain-specific languages
* Practical solutions to real problems
* Information-rich programming, including LINQ and F# type providers
* Covers F# 3.1 and VS 2013
About the Authors
Tomas Petricek contributed to the development of the F# language at Microsoft Research. Phil Trelford is an early adopter of F# and one of its most vocal advocates. They are joined by F# experts Chris Ballard, Keith Battocchi, Colin Bull, Chao-Jen Chen, Yan Cui, Johann Deneux, Kit Eason, Evelina Gabasova, Dmitry Morozov, and Don Syme.
Table of Contents
1. Succeeding with functional-first languages in the industry
2. PART 1 INTRODUCTION
3. Calculating cumulative binomial distributions
4. Parsing text-based languages
5. PART 2 DEVELOPING ANALYTICAL COMPONENTS
6. Numerical computing in the financial domain
7. Understanding social networks
8. Integrating stock data into the F# language
9. PART 3 DEVELOPING COMPLETE SYSTEMS
10. Developing rich user interfaces using the MVC pattern
11. Asynchronous and agent-based programming
12. Creating games using XNA
13. Building social web applications
14. PART 4 F# IN THE LARGER CONTEXT
15. F# in the enterprise
16. Software quality « less
This book is a great foundation for exploring functional-first programming and its role in the future of application development. The best-selling introduction to F#, now thoroughly updated to version 4.0, will help you learn the language and explore its new features.
F# 4.0 is a mature, open source, more » cross-platform, functional-first programming language which empowers users and organizations to tackle complex computing problems with simple, maintainable and robust code. F# is also a fully supported language in Visual Studio and Xamarin Studio. Other tools supporting F# development include Emacs, MonoDevelop, Atom, Visual Studio Code, Sublime Text, and Vim.
Beginning F#4.0 has been thoroughly updated to help you explore the new features of the language including:
* Type Providers
* Constructors as first-class functions
* Simplified use of mutable values
* Support for high-dimensional arrays
* Slicing syntax support for F# lists
Reviewed by Don Syme, the chief architect of F# at Microsoft Research, Beginning F#4.0 is a great foundation for exploring functional programming and its role in the future of application development. « less