There is suddenly a lot of interest in functional languages recently. The two advantages are
- Writing a DSL (Domain Specific Language)
- Writing concurrent code
The languages that seem to come up are:
I'm not particularly interested in DSL (despite my last post on code generators), however as CPUs contain more and more cores, we'll need a way to safely write multithreaded code.
The Clojure project has an interesting post on its approach on simplifying multithreaded code.
Erlang handles concurrency by only having local variables and providing a way to send messages to and from other threads.
Lastly, MPI is a .Net library for distributed processing where the same program executes multiple times and each instance communicates with each other using message passing which sounds very Erlang-like.
Tags: F#, Functional Langauges, Immutable
Hi, I am afraid Erlang is not based on JVM. It uses BEAM or HiPE.
Moreover, if you are interested in finding more advantages of functional programming, maybe you can search “why functional programming matters” and “functional programming for the rest of us”.
Thanks for the pointers to the papers. I plan on reading this when I have some time.
Right you are about Erlang. I mixed some of the languages.