Never heard of them. :whistle:
By the way, with high-performance I actually meant performance critical. I'd love to see an AAA game or something like a video codec in a functional language...
It's unlikely that these are the only examples, but these are the ones that I have seen the sourcecode for. You can hear of the woes of trying to explain how NASA's software is almost all FP from JPL and NASA engineers, but NASA doesn't want sourcecode released...ever. There are some scattered Erlang voice/data programs from NASA on the web. In the 80's, the British metropolitan phone systems were controlled by Ericsson (Erlang) phone routing software (some still is). I'm afraid I've long since forgotten the obscure names to the Traffic Control Software in Erlang that I've played with or the phone control software.
As far as I know the primary goal of such software is correctness. I'm sure NASA doesn't care if it's a few time slower than an optimized imperative program, as long as it keeps the Space Shuttle from crashing into the earth. For these applications I'm convinced that purely functional languages have great benefits. It's excellent for control.
I tried a couple times to write a high-performance application in Haskell, but I just didn't get what I expected. It's just far less suited for number crunching. I'm aware that the compiler has a lot to do with it, but that's a worthless excuse in practice. It's also likely that I could have gotten higher performance if I rewrote some things differently, but if it requires a PhD in math to get a language to do exactly what I want then I don't want to bother with it. Sometimes it's even easier to just write the assembly code. At that point using these languages is not worth it.
This is a site about game development, and I just don't think functional languages are very useful there. But don't get me wrong, I still find them very interesting and I know they are useful for certain classes of applications. They just have their limitations. In a multi-paradigm language I get the best of both worlds and I'm not limited.
Please do not argue your professor's views by proxy, as he is not here to correct your memory or reasoning. As it stands, this statement is false on it's face. You provide no reason it is silly, other than you don't accept it for some esoteric personal reasons. When you can actually write something in an FP again (since you've clearly drawn upon your vague memories of languages you had been told were impractical), you might learn some of your biases are unfounded, while others may be justified.
If I want a loop, I want a loop. In my opinion, recursion is more complicated than a loop. That's my reason why I think it's silly. These languages are so mathematically sound, that they are harder to use in practice. Loops are still simple, but there are other things that are almost a no-brainer in an imperative language but needlessly complicated in a functional language.
After a couple years in the trenches, it has become very clear to me that I cannot trust everything I have been taught. When I go back to school to learn a new language there is an Ivory tower. A common problem among academia, wherein an instructor spends enough time teaching the basics, that they believe they are an expert in what's practical. Again, while I have no reason to doubt you have been told certain things about FP, when my experience contradicts your claims, reality wins. This means you continue to believe what you like until you take the time to find out for yourself, based on differing opinions from programmers like yourself.
I am very well aware that professors do now always know how to put their theory into practice. But this professor actually realized that functional languages are too academic to ever become really popular.
Hope you try out some FPL again and come back with some real problems that FP can't solve. It's been a long time since I've seen a serious FP challenge. Pwning CODERS with actual examples is a lot more fun than posturing, since you get taken more seriously. More importantly, try a more appropriate forum (like comp.lang.functional) for stating that FP is useless when people use it every day. It's obvious that very few people use it here and a great many don't even use C yet.
Where did I claim that functional programming can't solve certain problems? Where did I claim that functional programming is useless?
All I'm saying is that they can be limiting in practice for certain applications.