Stefano Mazzocchi wrote:
Santiago Gala wrote:
[SNIP]
Getting closer to topic, I wonder if someone can post here a
subjective summary of the ideas on support for dynamic languages in
future java. I'm concerned about the stagnation of jython (barely
commits since 2.2a1) and I would also like to know how far is support
for dynamic languages going to be.
It's my understanding that Sun et al has figured out there's a problem.
The dam was broken w/ the Groovy JSR, and if there isn't now, there
will be a JSR at some point focused on support for dynamic languages on
the JVM.
Groovy made some important people (like Graham Hamilton) either realize
or admit that "Java" as we know it is fundamentally about the JVM and
classlibraries, and how you produce your bytecode is secondary. (i.e.
if you write in Java, great! if Groovy, great!)
In particular, things like smalltalk's primitive "anObject become:
anotherObject", which will turn all references to an object to
references to a different one seem difficult to mix with the static
typing nature of java, and I would like to know more about the
approach they are going to take for such kind of problems.
I agree with you (and Ben) about the fact that monoculture brings
stagnation, but I don't think this is a good place for talking about
"java innovations".
<hat type="project mentor">
This project is about implement a JVM as specified by the JCP, of which
the ASF is part of.
Changing and influencing that JVM spec is out of scope it if brings
incompatibilities that will preclude passing the certification stage.
</hat>
This said, it is not impossible for Harmony to be instrumental in
showing that additions to the JVM might be beneficial for the outside
world and therefore submit them for review to the JCP.
There is *nothing* that prevents us from implementing harmony-specific
features, if this doesn't stop us from passing the TCK.
Right - I think that there are all sorts of things I'd like to see in
Harmony, like good management, being able to checkpoint a JVM, serialize
the goop, move it to another machine, and let it continue... I'd also
love to experiment with how a VM can assist with the problem of object
persistence, disconnected object graphs, etc.
But this is done with the compatibility meme in mind, becuase w/o
compatibility, we have a mess.
geir