F#是由微软开发的全新的.NET编程语言,结合了函数和面向对象编程,比较适合于并行、算法、探索性和技术性编程任务,在金融行业有独特的优势。F#可用于统计分析、金融建模、和数据挖掘。F#的语言结构十分适合算法设计,因而被称为数学家的语言。业内人士预测F#结合C#的高效数据处理和开发将在华尔街占有一席之地。
本书简介:
Real World Functional Programming: With Examples in F# and C#Tomas Petricek (Author), Jon Skeet (Author)
- Paperback: 500 pages
- Publisher: Manning Publications; 1 edition (December 30, 2009)
- Language: English
- ISBN-10: 1933988924
- ISBN-13: 978-1933988924
brief contents
PART 1 LEARNING TO THINK FUNCTIONALLY ....................................1
1 ■ Thinking differently 3
2 ■ Core concepts in functional programming 29
3 ■ Meet tuples, lists, and functions in F# and C# 54
4 ■ Exploring F# and .NET libraries by example 81
PART 2 FUNDAMENTAL FUNCTIONAL TECHNIQUES .........................105
5 ■ Using functional values locally 107
6 ■ Processing values using higher-order functions 142
7 ■ Designing data-centric programs 177
8 ■ Designing behavior-centric programs 205
PART 3 ADVANCED F# PROGRAMMING TECHNIQUES .......................231
9 ■ Turning values into F# object types with members 233
10 ■ Efficiency of data structures 260
11 ■ Refactoring and testing functional programs 285
12 ■ Sequence expressions and alternative workflows 314
PART 4 APPLIED FUNCTIONAL PROGRAMMING ...............................351
13 ■ Asynchronous and data-driven programming 353
14 ■ Writing parallel functional programs 383
15 ■ Creating composable functional libraries 420
16 ■ Developing reactive functional programs 460
Product Description:
Functional programming languages like F#, Erlang, and Scala are attracting attention as an efficient way to handle the new requirements for programming multi-processor and high-availability applications. Microsoft's new F# is a true functional language and C# uses functional language features for LINQ and other recent advances.
Real World Functional Programming is a unique tutorial that explores the functional programming model through the F# and C# languages. The clearly presented ideas and examples teach readers how functional programming differs from other approaches. It explains how ideas look in F#-a functional language-as well as how they can be successfully used to solve programming problems in C#. Readers build on what they know about .NET and learn where a functional approach makes the most sense and how to apply it effectively in those cases.
The reader should have a good working knowledge of C#. No prior exposure to F# or functional programming is required.
About the Author
Tomas Petricek discovered functional programming as a graduate student at Charles University in Prague. He has been a Microsoft C# MVP since 2004 and is one of the most active members in the F# community. In addition to his work with F#, he has been using C# 3.0 in a functional way since the early previews in 2005. He interned with the F# team at Microsoft Research, and he has developed a client/server web framework for F# called F# WebTools. His articles on functional programming in .NET and various other topics can be found at his web site tomasp.net.
Jon Skeet is a software engineer and Groovy enthusiast who specializes in Java and C# development.