Hi Harmony developers, So, you might have heard of unofficial rumors of potential collaboration between the Harmony project and the SableVM project. Here's a message I sent lately on the SableVM mailing list: http://sablevm.org/lists/sablevm-devel/2006-March/000608.html
To summarize the public and private replies I got to this message: the prospect of establishing a strong collaboration was met with great enthusiasm. I did not want to get into official talks with the Harmony project before I could make sure that we wouldn't run into license problems. So, I started been working hard to get the permission of current and past SableVM developers to get their permission to change the license and (possibly) execute a software grant. So, I have tracked down all the 27 developers that have contributed code or patches to SableVM, in the development trunk or in any other development branch or sandbox. As of this morning, I had received the consent of 18 developers to change the license of SableVM. The following email details the distribution of the developers that have not yet replied to my request email (as of yesterday evening): http://sablevm.org/lists/sablevm-devel/2006-March/000614.html Now that licensing seems not to be an issue anymore, I would like to propose a close collaboration between our two projects. So, let me shortly present SableVM. SableVM is a project that I started during my Ph.D. studies within the Sable research lab at McGill university. From the beginning, its goal was to build a free/open-source virtual machine that could achieve two things: 1- be usable in the "real world" outside of academia, 2- be a research vehicle to within the Java optimization framework of our lab (which includes, among other things, Soot). These two objectives are still the guiding our development. Now, if I am right, "1-" is perfectly in line with the objectives of the Harmony project. Furthermore, the Harmony project already accepted the JCVM which shares many design features with SableVM (object layout, etc.) SableVM has been and is being worked on by many students to develop non-trivial components. Among interesting components: - JVMDI & JDWP -> debugging with Eclipse works - user class loaders - loading constraints - robust verifier - generational, partly incremental GC - etc. Many of these features are not yet integrated in our trunk, as we have strict rules on only integrating robust code into our trunk, so that our software remains usable by our users. What I would like to propose, is to contribute our stable, end-user targeted trunk version to the Harmony project. This would probably allow for a merge of the JCVM and SableVM development efforts (and who knows, maybe other contributed VMs eventually?), and help provide a more complete and robust J2SE environment. We would also contribute other modules, either with the initial submission, or later when they stabilize. So, the development/collaboration model that I propose would is as follow: 1- Day to day development and maintenance of the user targeted VM code happens within the Harmony repository. SableVM contributors must abide by Harmony rules to contribute to this so-called "SableVM trunk". 2- Research and development of trunk-breaking features by SableVM contributors continues within the SableVM repository, as not to pollute the Harmony svn with random code. Contribution back to the SableVM trunk (within the Harmony svn) must happen under Harmony rules. Of course, we are very open to other proposals. I am quite excited about this. How about you? Cheers, Etienne -- Etienne M. Gagnon, Ph.D. http://www.info2.uqam.ca/~egagnon/ SableVM: http://www.sablevm.org/ SableCC: http://www.sablecc.org/
signature.asc
Description: OpenPGP digital signature