You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by Apache Wiki <wi...@apache.org> on 2008/03/04 15:50:08 UTC

[Harmony Wiki] Update of "Google Summer Of Code 2008 Projects Proposals" by EgorPasko

Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Harmony Wiki" for change notification.

The following page has been changed by EgorPasko:
http://wiki.apache.org/harmony/Google_Summer_Of_Code_2008_Projects_Proposals

------------------------------------------------------------------------------
  4. '''Unify the native memory management of Harmony DRLVM'''.[[BR]] 
  DRLVM uses inconsistent APIs for native memory management, such as APR or malloc or mmap. It is desirable to have a unified API for native memory management. Hopefully the runtime native memory usage can be managed with a global view and then optimized. This layer could be extended to provide the API for Java heap native management as well.
  
+ 5. '''Implement "Bundle Tool", a tool to make binary snapshots of java applications with Harmony'''.[[BR]] 
+ There is no simple way for Harmony users to define the list of needed classes, jars and native libraries for their applications. Create a tool that creates a Harmony package with the classes and native libraries used by specific application or work flow. First of all this application should collect data from one or multiple application runs and then create a Harmony bundle without unneeded classes and native code.
+ 
+ 6. '''Refactor Java Bytecode Translator in Harmony JIT'''.[[BR]] 
+ Interaction between {{{ByteCodeParser}}}, {{{JavaLabelPrepass}}}, {{{JavaByteCodeTranslator}}} classes is very complicated and error-prone. Refactor Java bytecode translator in the Jitrino.OPT to make the code cleaner and simplify the data structures used. C++ skills required.
+ 
+ 7. '''Support for dynamic languages, invokedynamic bytecode instruction support in VM and JIT'''.[[BR]] 
+ Support the [http://blogs.sun.com/gbracha/entry/invokedynamic invokedynamic] instruction i.e. the ideas of [http://jcp.org/en/jsr/detail?id=292 JSR 292] draft. And implement basic support for a dynamic language like {{{Python}}}, {{{Ruby}}}, {{{JavaScript}}}. Students are free to choose the actual dynamic language. We want this language to have dynamic typing, reasonable user base, usable standard library, a set of compatibility tests.
+