Introduction

What is F#?

The blurb from the F# site describe it as: "F# is a mixed functional/imperative programming language based on the design of the functional language Caml and the .NET language C#."

Why F#?

I’ve always been interested in functional programming, I like its simplicity, but even functional programming fans will tell you that although functional programming makes some problems very easy to solve, it makes others very difficult. I think this makes functional programming and the .NET framework a good fit as in theory the .NET framework offers you the chance to solve a problem using the most appropriate language.

F# seems to be the most fully developer functional language for the .NET framework so I’ve spent most time investigating it. Also F# is not a pure functional language; this is very help with trying to interoperate with class libraries written in other languages which are not functional then you can not hope to keep things purely functional.

It is true functional programming is not used much commercially. But, not all good ideas in programming languages are used in commercial situations and for me functional languages represent a rich vein of untapped good ideas. I think F# help take those ideas a step closer to being useful, but only time will tell.

You can contact me at robert <at> strangelights.com