From my experience, that being, Java, C++, C, Objective-C, and Perl its all a matter of the proper tool for the job. Each language has its ups and downs, perl by nature is cryptic (in my opinion) but it's such a life saver, duct-tape anyone?. Java and C++ is all a matter of taste and once again what the intended scope of the application is. I find Java more useful for web based applications and simple networking applications. C++ I only use when I have to, and that is very rare, usually hardware related fun. Objective-C has an incredibly powerful messaging system and very clean coding style, but is more oriented to the NeXT environment( NeXT = Next Step = OS X... kinda). C is your all purpose procedural language, I only use it when speed matters and portability doesn't(I know we all love tracking down those dependancies, ./configure, make, pull out hair, ./configure make, bang head on keyboard, etc, etc :P). I have toyed with Pascal, Basic, .NET, VB, Ruby, Python, and most of the alphabet soup thats out there, but I have focused on Java,C++,C, Objective-C and Perl because they are the tools that I feel at home with.
When it really boils down to it, does it matter what language its written in, does it do what it was designed to do, does it do it in a efficient manor?
So in my humble opinion, learn any and every language you can. Its just syntax and design patterns. That ensures that you have a robust tool set and you know when to use each one of them.
Just my thoughts of the day.
