Book description
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.
Expert F# 3.0 is:
A comprehensive guide to F# by the inventor of F#
A treasury of F# techniques for practical problem-solving
An in-depth case book of how F# applications and of F# 3.0 concepts, syntax, and features
F# isn't just 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. F# 3.0 combines this with the seamless data-integration capabilities of F# Information-Rich Programming. Whatever your background, you'll find that F# is easy to learn, fun to use, and extraordinarily powerful. F# will change the way you think about—and go about—programming.
Written by F#'s inventor and two major F# community members, Expert F# 3.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!
What you'll learn
Explore F# and its features quickly and thoroughly in the introductory chapters
Use F# with matching technologies including SQL, LINQ, ASP.NET and REST
Build reactive, asynchronous, and distributed web applications with F#
Interoperate with F# from other languages, especially C#
Integrate data sources and services using F# 3.0 Information-Rich Programming
Test, profile, and performance tune F# applications
Create mobile applications, both web and native
Who this book is for
Expert F# 3.0 is for anyone interested in state-of-the-art programming for solving real-world problems. Programmers of all backgrounds will find it engrossing. For C#, Java and VB programmers, F# provides invaluable insights into the future of these languages. For lovers of Python, Ruby and other dynamic languages, F# shows how you can get most of the benefits of these languages while keeping strong types and good performance. For educators, F# is the answer to a decades-long prayer: a language based on strong computer science concepts that also excites and empowers, not just in the classroom, but also in the real world.
Table of contents
- Titlepage
- Dedication
- Contents at a Glance
- Contents
- About the Authors
- About the Technical Reviewer
- Acknowledgments
- Chapter 1: Introduction
- Chapter 2: Your First F# Program – Getting Started With F#
- Chapter 3: Introducing Functional Programming
-
Chapter 4: Introducing Imperative Programming
- About Functional and Imperative Programming
- Imperative Looping and Iterating
- Using Mutable Records
- Using Mutable Locals
- Working with Arrays
- Introducing the Imperative .NET Collections
- Exceptions and Controlling Them
- Having an Effect: Basic I/O
- Combining Functional and Imperative: Efficient Precomputation and Caching
- Combining Functional and Imperative: Functional Programming with Side Effects
- Summary
- Chapter 5: Understanding Types in Functional Programming
-
Chapter 6: Programming with Objects
- Getting Started with Objects and Members
- Using Classes
- Adding Further Object Notation to Your Types
- Defining Object Types with Mutable State
- Getting Started with Object Interface Types
- More Techniques to Implement Objects
- Combining Functional and Objects: Cleaning Up Resources
- Extending Existing Types and Modules
- Working with F# Objects and .NET Types
- Summary
- Chapter 7: Encapsulating and Organizing Your Code
- Chapter 8: Working with Textual Data
- Chapter 9: Working with Sequences and Structured Data
- Chapter 10: Numeric Programming and Charting
- Chapter 11: Reactive, Asynchronous, and Parallel Programming
- Chapter 12: Symbolic Programming with Structured Data
- Chapter 13: Integrating External Data and Services
- Chapter 14: Building Smart Web Applications
-
Chapter 15: Building Mobile Web Applications
- Web-based vs. Native Mobile Applications
- Feature Detection and Polyfilling in WebSharper
- Mobile Capabilities, Touch Events, and Mobile Frameworks
- Serving Mobile Content
- Building a Mobile Web Application for iOS Devices
- Developing Social Networking Applications
- WebSharper Mobile
- Developing Android Applications with WebSharper
- Summary
- Chapter 16: Visualization and Graphical User Interfaces
- Chapter 17: Language-Oriented Programming: Advanced Techniques
-
Chapter 18: Libraries and Interoperating with Other Languages
- Types, memory and interoperability
- Libraries: A High-Level Overview
- Using the System Types
- Using Further F# and .NET Data Structures
- Supervising and Isolating Execution
- Further Libraries for Reflective Techniques
- Some Other .NET Types You May Encounter
- Under the Hood: Interoperating with C# and other .NET Languages
- COM Interoperability
- Interoperating with C and C++ with PInvoke
- Summary
- Chapter 19: Packaging, Debugging and Testing F# Code
- Chapter 20: Designing F# Libraries
- Index
Product information
- Title: Expert F# 3.0, Third Edition
- Author(s):
- Release date: October 2012
- Publisher(s): Apress
- ISBN: 9781430246503
You might also like
book
Expert F# 4.0, Fourth Edition
Learn from F#'s inventor to become an expert in the latest version of this powerful programming …
book
Programming F# 3.0, 2nd Edition
Why learn F#? With this guide, you’ll learn how this multi-paradigm language not only offers you …
book
Mastering F#
A comprehensive and in-depth guide to writing functional programs using F# About This Book Learn how …
book
F# High Performance
Build powerful and fast applications with F# About This Book Explore the advanced concurrency support in …