Skip to main content

Functional Programming in C#: Classic Programming Techniques for Modern Projects

Functional Programming in C#: Classic Programming Techniques for Modern Projects

Oliver Sturm

ISBN: 978-0-470-74458-1

May 2011

288 pages

In Stock

£22.99

* VAT information

Description

Take advantage of the growing trend in functional programming.

C# is the number-one language used by .NET developers and one of the most popular programming languages in the world. It has many built-in functional programming features, but most are complex and little understood. With the shift to functional programming increasing at a rapid pace, you need to know how to leverage your existing skills to take advantage of this trend.

Functional Programming in C# leads you along a path that begins with the historic value of functional ideas. Inside, C# MVP and functional programming expert Oliver Sturm explains the details of relevant language features in C# and describes theory and practice of using functional techniques in C#, including currying, partial application, composition, memoization, and monads. Next, he provides practical and versatile examples, which combine approaches to solve problems in several different areas, including complex scenarios like concurrency and high-performance calculation frameworks as well as simpler use cases like Web Services and business logic implementation.

  • Shows how C# developers can leverage their existing skills to take advantage of functional programming
  • Uses very little math theory and instead focuses on providing solutions to real development problems with functional programming methods, unlike traditional functional programming titles
  • Includes examples ranging from simple cases to more complex scenarios

Let Functional Programming in C# show you how to get in front of the shift toward functional programming.

INTRODUCTION.

PART I: INTRODUCTION TO FUNCTIONAL PROGRAMMING.

CHAPTER 1: A LOOK AT FUNCTIONAL PROGRAMMING HISTORY.

CHAPTER 2: PUTTING FUNCTIONAL PROGRAMMING INTO A MODERN CONTEXT.

PART II: C# FOUNDATIONS OF FUNCTIONAL PROGRAMMING.

CHAPTER 3: FUNCTIONS, DELEGATES, AND LAMBDA EXPRESSIONS.

CHAPTER 4: FLEXIBLE TYPING WITH GENERICS.

CHAPTER 5: LAZY LISTING WITH ITERATORS.

CHAPTER 6: ENCAPSULATING DATA IN CLOSURES.

CHAPTER 7: CODE IS DATA.

PART III: IMPLEMENTING WELL-KNOWN FUNCTIONAL TECHNIQUES IN C#.

CHAPTER 8: CURRYING AND PARTIAL APPLICATION.

CHAPTER 9: LAZY EVALUATION.

CHAPTER 10: CACHING TECHNIQUES.

CHAPTER 11: CALLING YOURSELF.

CHAPTER 12: STANDARD HIGHER ORDER FUNCTIONS.

CHAPTER 13: SEQUENCES.

CHAPTER 14: CONSTRUCTING FUNCTIONS FROM FUNCTIONS.

CHAPTER 15: OPTIONAL VALUES.

CHAPTER 16: KEEPING DATA FROM CHANGING.

CHAPTER 17: MONADS.

PART IV: PUTTING FUNCTIONAL PROGRAMMING INTO ACTION.

CHAPTER 18: INTEGRATING FUNCTIONAL PROGRAMMING APPROACHES.

CHAPTER 19: THE MAPREDUCE PATTERN.

CHAPTER 20: APPLIED FUNCTIONAL MODULARIZATION.

CHAPTER 21: EXISTING PROJECTS USING FUNCTIONAL TECHNIQUES.

INDEX.

Read Me
Download
License
Download
FCSlib
Download
FCSComplete
Download
Chapter 3
Download
Chapter 4
Download
Chapter 5
Download
Chapter 6
Download
Chapter 7
Download
Chapter 8
Download
Chapter 9
Download
Chapter 10
Download
Chapter 11
Download
Chapter 12
Download
Chapter 13
Download
Chapter 14
Download
Chapter 15
Download
Chapter 16
Download
Chapter 17
Download
Chapter 18
Download
Chapter 19
Download
Chapter 20
Download
Chapter 21
Download
ChapterPageDetailsDatePrint Run
83Error in Code
public static class Calculator {...

should be:
public static class Calculator2 {...

AND reference to call would need changing, as well, since it's for the calculator in the above example.
10/18/11

84Error in Code
public static class Calculator {...

should be:
public static class Calculator3 {...

AND reference to call would need changing, as well, since it's for the calculator in the above example.
10/18/11