Real-World F# Programming Articles now available on MSDN
As just mentioned on the F# team blog, the F# team are very excited to pass on the news that Tomas Petricek's Real-World F# Programming Articles are now available on MSDN!
Congratulations to Tomas, Keith, Yin and Gordon who have worked so hard on this. Here's the chapter outline:
Chapter I: Introducing Functional Programming
This chapter explains the basic concepts behind functional programming such as immutability, first-class functions and expression-based programming. Many of the concepts are demonstrated in C# to guide programmers without prior experience with F# or functional programming. It also shows the benefits that follow from these concepts, such as the fact that they make testing and reasoning about programs easier.
Chapter II: Server-Side Functional Programming
This chapter explain server-side development and agent-based concurrency in F#. Agents (the
MailboxProcessor
type) are introduced using a tutorial that develops a simple chat server using agents, encapsulates it into a reusable .NET object and exposes it as a web page using theHttpListener
type. The chapter also implements two reusable agents that solve common data processing tasks.Chapter III: Developing Client-Side Applications
This chapter explain how to write reactive user-interfaces in F# using Silverlight. It covers two approaches to writing reactive applications in F#. The first approach is declarative and it composes data-flow using event combinators. The second approach is more imperative and it describes control-flow using F# asynchronous workflows. The chapter also covers practical aspects, such as how to use F# with XAML and Microsoft Blend.
Chapter IV: Numerical and Symbolic Computing
(This chapter is written by Yin Zhu)
This chapter explain how to use .NET libraries such as Math.NET Numerics, Microsoft Sho, and F# Power Pack to implement numerical algorithms in F#. It explains what makes F# a great language for numerical computing and reviews various numerical libraries for .NET and F#. Three tutorials cover the most common numerical libraries that can be easily used from F#.
Chapter V: Developing Data-Driven Websites
This chapter explains how to use .NET web and data technologies from F#. It uses F# to develop the model and controllers of an ASP.NET MVC web application with a front-end created using C# and Razor. It shows how to use asynchronous workflows to write more efficient web pages and how to easily access SQL database using dynamic operator.
Chapter VI: Visualizing Data with .NET Charts
This chapter describes the options for visualizing data in F#. The chapter consists of several larger tutorials that cover .NET Chart Controls, the FSharpChart wrapper for F#, Microsoft Excel and briefly also gnuplot. The libraries are demonstrated a few larger tutorials, such as visualization of financial data, and How To articles that show F# code to create common chart types.