Wizard, since the consensus here is that such a question is off-topic on all Stack Exchange sites, I would recommend the learn programming sub-reddit on reddit.com. There is a decent activity on that site. Although you might be tempted to post on the programming sub-reddit, the mods there are pretty uppity and will ban your post sooner than your mma post got closed last week :) I've also had some success with such questions on askreddit, mainly because it has 100 times the subscribers as the learn programming subreddit, and certainly a decent number of them are programmers.
As for your comment:
I already know a proprietary high-level largely function language (Mathematica). I want to learn something computationally efficient, open, more common, fairly terse, and not loop-based. Interesting options appear to be Haskell, F#, and Python. Is that good enough, or still doesn't cut it?
Here's my $0.02 on it:
Seeing your knowledge of Mathematica, I reckon Haskell will be the easiest for you to learn, as it is a purely functional programming language. However, the reason you're thinking of diversifying must mainly be to learn a different programming paradigm, or perhaps to learn a language that is strong in areas where Mathematica is not.
From that point of view, I'd highly recommend Python. Python meets nearly all your requirements - clean code, flexibility, open, commonly used, etc. In my case, I work mostly with MATLAB, and use Mathematica for all my symbolic computation + graphics. These two together satisfy nearly all my needs. However, I've been learning Python by the side, as I've found that it can do nearly everything that MATLAB can and more (perhaps there aren't as many dedicated toolboxes, as there isn't a large organization throwing its weight and money behind development), and the growth of the language has been phenomenal. Also because I think that in 5-10 years, Python will do to MATLAB, what MATLAB did to Fortran... phase it out of common use and force graduate students to be stuck with advisors' legacy code. But I could be wrong, which is why I still use MATLAB actively.
Python is also a general-purpose language. You can easily write a web application in Python and ship it, whereas you can't with MATLAB and Mathematica. Also, the string manipulation capabilities are far superior to that of MATLAB and Mathematica, and with the NumPy/scipy packages, the array manipulation capabilities parallel MATLAB's and are superior to Mathematica's (Mathematica is just not built for it).
Python also has some rudimentary support for functional programming with lambda calculus, map, etc. which were ported from Lisp, and I believe that it will improve greatly in the future. I don't know much about F#, but you can take a look at this comparison between Python and Haskell.
Lastly, I'd echo Bill and Chris in saying that the choice is highly dependent on what you want to do with it. If it's for a general non-functional programming experience/learning a new language, I'd say go for Python. If not, then the choice depends on your specific needs.