I'm a big fan of a cousin language to Clean, Erlang. Erlang is also a functional language, and while it doesn't have quite such a flashy GUI library, it /is/ opensource, and it has several advantages vs. Clean and other functional languages.
Advantages over Clean et al.:
* A Functional Programming Language. Simplifies implementation of many complex algorhithms. (Okay, so Clean considers itself a Functional Language. I've got a purist's rant coming later in the list.)
* Lightweight threading. The Erlang VM provides its own extremely light process scheduling, running in one OS-level thread. Context switches are claimed to be at least one order of magnitude faster than native threads.
* Simplified interprocess communications. Erlang provides a mechanism for sending and recieving messages between processes that is far easier to wrap your head around than any other I've seen.
* Distributed Processing. The kernel is designed to communicate not only with processes running in the VM, but with other instances of the VM, even on other hosts running other architectures.
* Powerful Distributed Database. Mnesis, a standard library included with the distribution, provides a very flexible relational database that is process-safe, and remotely accessible in a fairly transparent fashion.
* <Purist-Rant>Truely Bind-Once. This is a common complaint by elitist bastards like myself. Clean allows the redefinition of a bound variable.</Purist-Rant> This offends the classical properties of a functional language, but, to be honest, the side effects introduced, are not much more dangerous than those introduced by file access, communcations with other processes, user input, etc.
* Open-Source, Free and Portable. Clean's source is not freely available, and it is only available for a limited number of platforms. Erlang /is/ opensourced, and has an active outside group of developers extending, maintaining and improving. Since you have the source, and the source was designed to compile on Unixen in general, as well as Win32, it is in essence, more portable.
I have to run to a meeting, so I'll return with the disadvantages in a bit. Nothing like a serial-posting, right?