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.
I think that all these meet your requirements:
My bet is that you’ll get the groovier IDE experience with Groovy (and it’s Groovy Eclipse Plugin).