I know the topic I started is too subjective. But I just wanted some expert guidance learning new languages. I've been working with .NET languages (C#, VB.NET) quite a few years (around 4). And it's been years since I stopped experimenting with new laguages after settling down in a job.
Few weeks back I just started working on my personal project, which I am going to spend much time in the coming months. During the analysis I found that I just can't accomodate the luxuries of cost effective languages, programs and IDEs. So I planned to move to the wide spectrum of open source languages and tools.
And when I look at the current choices, I was just speechless. Hundreds of promising open languages and toolsets and I found it's hard to choose. And I can't even think of evaluating each language myself (it's a worst nightmare). Currently I started with Mono (for the sake of C#).
I felt this is going to be a good chance for learning new programming languages and models. So I am open to any language that offers me the following:
- more functional
- dynamic language features
- better language elegance (like lambdas, Haskel like SQL syntaxes or C# LINQ)
- better community support
- must be open
- easy interaction with the web
- support for parallelism and concurrency (easy threading)
- better in performance
- proven web frameworks
- better IDE support (I got this ease of use syndrome after using years of MS tools)
I love the Haskel and Erlang language programming approach. But I don't have a clue about these languages' web stack and concurrency mechanisms.
EDIT: i would appreciate few reasons along with your choices. It will be really helpful.
Cheers
Ramesh Vel