October 19, 2007
Functional Programming: F# and Erlang
A couple of thoughts on functional programming in general and on F# and Erlang in particular.
Erlang? Is it worth it?
I read Joe Armstrong's Erlang thesis and other Erlang related material with great interest. After all, Erlang claims some very compelling architectural benefits in the areas of scalability and availability. However one thing that prevents me from digging too deep into it is the utter ugliness of the language vs. (for example) Ruby which is very compelling.
I also tend to agree with Otaku that at least today you can achieve this resilience with other languages as well.
On the other hand, we start to see some really interesting things built on Erlang like:
Well, I am still on the fence for this one, but I guess I will take a deeper look at Erlang eventually.
By the way, while other functional languages also have irritating syntax (e.g. Scheme). Some look more intereseting (like F# or OCaml).
Which brings me to the next tidbit...
Functional Languages Moving Mainstream
Functional programming is an old paradigm (see, for example, this paper from 1984 Why Functional Programming Matters explaining the advantages of functional programming over structured programming.)
For a decade or even more and even today the object-oriented paradigm has ruled the software development world. In a way, and as part of the end of the "one size fits all" paradigm (I also mentioned this trend here). We also see more pluralism for languages so we get more dynamic languages vs. static typed one, and we find a place for functional languages and not just object-oriented ones. (I'll expand more on that in another post).
Anyway, yesterday S. Somasegar (MS VP of DevDiv) announced on his blog that F# will be "productized":
We will be partnering with Don Syme and others in Microsoft Research to fully integrate the F# language into Visual Studio and continue innovating and evolving F#. In my mind, F# is another first-class
programming language on the CLR.
Of course, Microsoft is not the center of the universe, but when a company like Microsoft chooses to bring something closer to mainstream it is a significant move which, in my opinion, shows that functional programming is getting more traction.
Posted by Arnon Rotem-Gal-Oz at 05:07 AM Permalink
|