Hi Henrik,
Nice meeting you at techtalks this week. I am also interested in functional programming languages, and am looking into F#.
This article published in Dr. Dobbs Journal today may interest you. www.ddj.com
regards
Scott Hill
frontier sciences group
Functional Languages: Into the Real World
A knock against functional programming languages typically involves their inoperability with nonfunctional languages, which lead to impedance mismatches between data and objects. Hence, their slow adoption in the mainstream of software development. But considering the growing complexity of today's software systems and the fact that modularity--like that of functional languages--is the key to successful programming, functional languages have a lot to offer when tackling multi-core and parallel computing.
Which is probably one reason why Microsoft has decided to move its F# functional programming language from the research labs into the real world. Specifically, F# will be a first-class citizen on .NET, integrate into Visual Studio, and run on the Common Language Runtime (CLR). Which means, in other words, that it will interoperate with other languages.
Of course, playing around with functional languages isn't new to Microsoft. Functional language features such as lambda expressions are in C#, and generics are in .NET 2.0. And LINQ, a set of .NET extensions for language-integrated queries, is directly based on functional programming techniques, at least according to Anders Hejlsberg, chief architect of C#, in this video entitled Anders Hejlsberg on LINQ and Functional Programming.
Functional languages like F#, which has its roots in ML, have other benefits, including type safety, performance, and interactive scripting on modern runtimes. And again, it is ideal for taking on complex problems, like those in the financial, scientific, and technical computing arenas.
For a better explanation of why functional programming is important, take a look at Why Functional Programming Matters, by John Hughes.
-- Jonathan Erickson
jerickson@ddj.com