Archie Cobbs wrote:
Are you suggesting we do it w/ JC? :) Is there a single copyright
holder such
I'll have to abstain from the voting on that :-)
I am not sure why not :)
I think that what Geir is proposing is that Harmony start from some
exisitng codebase that is hacking on and reworked as part of a
"learning" experience for everyone as part of a stepping stone before
the "real" VM is rewritten once the committers understand the space
(community and technical). If you think JC is a good place to start for
this then speak up - but you must realize that it may end up being
hacked a million different ways and not look like JC at all in the end.
And it may get thrown out as people start on the next VM. If you are
comfortable with that then ...
That approach makes sense to me. As pointed out before, JC is available
license-wise [1]. My guess is that at minimum there are some useful
bits that can immediately used.
excellent.
I'd also consider using some of the good ideas (mostly from SableVM)
that JC implements, if not the actual code. For example, per-class loader
memory areas, bidirectional object layout, and the threading state
management. The latter in particular is a bug-prone area that has already
been carefully thought out by Etienne Gagnon.
Both you and Steve have suggested the same sort of approach - namely
that Harmony look at different ideas implemented in different JVMs and
scoop the cream of the crop off the top. However not everyone here has
the experience and background to highlight the important aspects of
different JVMs. So what I would suggest is that you both start a list
either in Wiki or in subversion that highlights these areas and where
they are implemented and the papers in which they described etc. This
will make it much easier for other people to make an informed decision.