Manning Early
Access Program
Functional Programming for the Real World
EARLY ACCESS EDITION
With examples in F# and C#
Tomas Petricek with Jon Skeet

MEAP Release: June 2008
Softbound print: October 2009 (est.) | 500 pages
ISBN: 9781933988924

Start Reading Functional Programming for the Real World today through the Manning Early Access Program
MEAP OPTIONS*
  MEAP + Ebook only - $29.99
  MEAP + Print book + Ebook Combo - $54.99
  Print book only - $49.99 (Not yet available for order)
* Download early chapters in PDF format! For more information, please see the MEAP FAQs page.
  About MEAP Release Date Estimates    

Table of Contents, MEAP Chapters & Resources

Table of Contents         Resources 
PART I - Introducing functional programming and F#
 1. Thinking differently about problems - FREE
 2. Functional concepts and programming languages - AVAILABLE
 3. Meet tuples, lists and functions in F# and C# - AVAILABLE
 4. Exploring F# and .NET libraries by example - AVAILABLE

PART II - Core functional techniques
 5. Using functional values locally - AVAILABLE
 6. Working with values using high-order functions - AVAILABLE
 7. Designing data-centric programs - AVAILABLE
 8. Designing behavior-centric programs - AVAILABLE

PART III - Advanced F# programming techniques
 9. Turning values into F# object types with members - AVAILABLE
 10. Efficiency of data structures, tail recursion, and continuations - AVAILABLE
 11. Avoiding side-effects, sequence expressions and laziness - AVAILABLE
 12. Changing code meaning with computation expressions - AVAILABLE
PART IV - Applied functional programming
 13. Using F# asynchronous workflows - AVAILABLE
 14. Data parallelism for functional data structures - AVAILABLE
 15. Creating domain specific languages - AVAILABLE
 16. Functional reactive programming with events and time-varying values - AVAILABLE
 17. Obtaining, experimenting and visualizing data interactively
 18. Turning sample code into a real program
 

DESCRIPTION

Functional programming languages are astonishing for their ability to express ideas in a succinct, declarative way, allowing the developer to focus on the essence of the problem rather than on the technical details of the solution. Now, they're gaining new prominence as an efficient way to handle the concurrent programming requirements of multi-processor and high-availability applications.

Building on the legacy of functional languages like Erlang, Haskel, and OCaml, Microsoft's recently-introduced F# programming language brings the functional model to .NET. In addition to a functional approach, F# offers good tools and .NET platform support. In the C# language, LINQ and the underlying new features, like lambda functions, blend the power and familiarity of the .NET platform with the strengths of a declarative functional style.

Functional Programming for the Real World is a unique tutorial that explores the functional programming model through the F# and C# languages. The clearly-presented ideas and examples will give you a deep understanding of 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#. Moving beyond theory, this book also provides practical examples that apply functional programming to the day-to-day tasks you face as a .NET developer.

You'll see how to extend your existing knowledge of the C# language and the .NET platform by learning where a functional approach makes the most sense and how to apply it effectively in those cases. You'll also learn how the new F# language—designed as a functional language from the ground up—can be an important addition to your programming toolkit. And finally, you'll learn how to approach programming problems in a functional way.

WHAT'S INSIDE:

The reader should have a good working knowledge of C# 2.0. Some familiarity with C# 3.0 is nice, but all relevant C# 3.0 features are explained in sidebars. No prior exposure to F# or functional programming is required.

About the Authors

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 veteran C# and Java developer. His contributions to the software community include thousands of newsgroup posts, hundreds of articles and blog posts, many user group talks, and almost fanatical participation on the Q&A site "Stack Overflow". He was a co-author of "Groovy in Action", and more recently wrote the critically acclaimed "C# in Depth."

About the Early Access Version

This Early Access version of Functional Programming for the Real World enables you to receive new chapters as they are being written. You can also interact with the authors to ask questions, provide feedback and errata, and help shape the final manuscript on the Author Forum

WHAT REVIEWERS ARE SAYING

“Seriously though, if you've got any passion for programming and are targeting .NET then you should be reading this now.”
Tom Kirby-Green, Byte Wrangler and Pixel Artist

Want to learn More?

Sign up to read more content when it is released and to receive news about this book.