> > 2. Introducing too many different idioms to the language itself makes > it more difficult to learn and creates boilerplate thinking when > writing and reviewing code. So I can understand if people think many > times before adding some new stuff to the Java core language. Having > said that I don't understand why I can't do a switch on strings - this > is something really missing (was one of the first things I noticed > really, really missing). > it is coming in 7.0. Although it's common to want to switch on strings IMHO its an indication that you want behavior in your strings which is not String like so using a String isn't what you really want to be using. About the only people that I can see wanting it are swing (or those that deal with named events) and compiler writers. Really points to how we need an event model and how mis-designed Swing really is (no, SWT isn't any better).
> 3. The .NET introduced the option to write in any language - although > basically just VB.NET and C# is around. Whenever I attended .NET > events at Microsoft everybody told me that I should use C# over VB.NET > because that is also where Microsoft is focusing. And I could > understand this very well because having different components written > in different languages makes it harder to read through the whole > project - it is good to have one standard. Software development is not > fashion industry. Different styles are more annoying than nice here. > In the extremer cases a developer needs to be familiar with at least 3 > languages when joining a project. With the rising of so many different > languages for the Java platform I worry about a jungle of different > languages that will be around in a few years. > I'm not. Fragmentation and complexity are natural results of language evolution. > 4. My experience showed that you can be much more efficient and > productive if you use a language you are already familiar with and > already have written your own helpful tool classes/methods/libraries > than using "the optimal language for the particular requirements". > Switching main daily-use-language is a big effort. This is not > something you want to do often. Therefore: I have chosen Java because > it seems that I can implement every software project (that I would > probably work on - I am not going to develop a hardware driver) using > Java. And the good point is also that when I need JavaScript I at > least remember to put the semicolon and can use other familiar syntax. > I wrote a lot of MS Office macros in the past and knowing that I can > use Java also for writing Open Office addons makes me feel good. > I've worked in polygot environments and I found (as you'd expect) that many stuck to one language though everyone seems ok with the others. It just depended on what part of the system you were focusing on. Point is, if it's in the environment, you'll adapt. Otherwise you'll stagnate (language wise). I believe there is a lot of leg left in Java. To be sure some of the boiler pate stuff is going to be picked off by other languages as it should be. We don't want to continue to do things the hard way when we've figured out easier ways to get it done. That said, there are plenty of hard things to tackle that aren't boiler plate. Also there are things that are very difficult to do in Java. So just as Java enabled distributed computing for the masses, other languages will help the masses tackle other more difficult problems. Multicore is the biggest one that comes to mind. Will Scala help? How about Clojure? No idea. Adrian Colyer just laid out his ideas on why Groovy (yeah yeah, Dick loves the Groovy) and Scala win. I so completely agree with his reasoning that I thought he was reading my mind. That said, I'm now discovering that a lot of Java leaks through into Scala which means will it be helpful. Who knows! (everyone on this list I bet ;-)) Point is, we lack expressionism in Java, it's difficult to add given the constraints we live under so we try other things. Just don't take so long to learn the next greatest thing next time ;-) Regards, Kirk --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to javaposse@googlegroups.com To unsubscribe from this group, send email to javaposse+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/javaposse?hl=en -~----------~----~----~----~------~----~------~--~---