I disagree with most of what you say here.
Saying that Java Classes have classes is not
the answer, what is the class of class? with out
a meta layer writing things like serializers and
integrated tools is much harder ( So does the fact
that it is typed but that is a whole other religous
war ).
It a conference someone in the audience asked one of the designers of Java to compare
it to smalltalk. He said.
"Java is like Smalltalk with a Straight jacket for
protection"
you don't see a difference in elegance and readability between
anInstance perform: #myMethod
and
anInstance.getClass().getMethod("aMethod",null).execute(anInstance, null);
Keep in mind that software needs to be read and maintained (and which is easier to
learn?).
And this is just a small example.
Using key words instead of having an extensible language does make the language more
complicated.
There are good reasons why the best java development
environment is written in Smalltalk.
You think it is an exceptable solution to have two
types of Integer, one that is primitive and one that isn't? This doesn't make systems
harder to read and maintain?
Let me ask you something. Have you ever seen a study
saying that programmers are more productive in Java
than in Smalltalk? There is an interesting study comparing the two at
http://www.lineaengineering.com/Resources/Productivity_/productivity_.html web site.
Simplicity is elagance.
--== Sent via Deja.com http://www.deja.com/ ==--
Share what you know. Learn what you don't.