Well, the post on javalobby created quite a stir. There are stirs all the time and I usually don’t even bother opining about them, but as you can see from my previous post this time I did.
Two major ideas prevail in the post responses. The first is the argument about actually adding new things to the language and the other, more prevalent conversation, is arguing about the merits of closures, properties, generics, etc.
I like the arguments. There are some really smart people (in the academic sense, at least) mixing it up. I think its all good.
The only thing I don’t like about where the thread headed was that, to me, Yakov Fain’s original post was pretty straight forward – leave java where it is. I just do not agree with that. The language is not perfect and if things are added right (not that I have the answer) they wont affect backwards compatibility. Quoted from his post:
Is Java the primary language that pays my bills today? Yes it is. Are there other languages/technologies I work with? Yes, there are. Do I want to see new language constructs in Java? No, I do not. People propose adding closures to the language. There are some attempts to introduce data binding to Java Beans. I do not think you can teach an old dog new tricks. If you remember, Java has been created as a simple version of C++. Let’s keep it as simple as possible.
There’s no inferring of anything there. He wants Java to be simple forever. He doesn’t believe in ‘teaching an old dog new tricks’. As a professional specializing in Java _stuff_ I actually resent his attitude, but he’s entitled to it. He thinks the engineers should create a new language for new things… to me that is crazy. Is it Java 7 with new features just named something else? And he say’s let it age gracefully… I can understand an analogy with and old lady getting plastic surgery after plastic surgery and then just being a jacked-up looking old lady, but a programming language is different. Think of it as an old lady that eats right, exercises, and stays on top of the latest information that can help her stay young and healthy.
So, even though I did gain some valuable insight from the arguments, I hold firm on my original opinion: I think that any and all features should be laid out there for the JCP. If you have issues with the way the JCP works then do something about it, specifically. Don’t try to paralyze the language because of it. Thankfully, my post only got one negative ‘hit’ (read flame) when Andy Tripp was annoyed by me saying ‘you dont have to use the new features’. Obviously he’s been around a while so he caught that it was a bit of a blanket statement – but he’s probably a bit sensitive to that sort of thing due to what his company does. (Its hard for me to understand why anyone would do this in real life). Again, though, its his opinion and he’s entitled to it.