harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jin Mingjian <jin....@gmail.com>
Subject Re: [GSoC] My proposal
Date Wed, 01 Apr 2009 15:02:58 GMT
Hi, Mike:

And this topic seemly has been discussed in the mail list several
times ago, in my memory. I just have some thoughts about this:) Have
not submit anything about it. Some work has been done in some
meta-circular JVMs. This topic is also related to something like the
runtime snapshot of JVM or others. In this field, I guess Xiao Feng Li
has more rights to speak about it:) The idea seem similar to the basic
description like Gong. But I am afraid that detailed discussion about
existed algorithm would spot the potential work? I think solving this
problem is a much useful thing. However, I have not deep investigation
in this field, especially for a general JVM like apahce, except for
some raw ideas like that:)
Xiao Feng, possible to give some comments?:)

regards,
Jin



2009/4/1 Charles Lee <littlee1032@gmail.com>:
> Hi Jin,
>
> What stop you to submit this kind of gsoc proposal ago? Did you meet any
> problem? Could you give more information about your problem? Your deep
> consideration will help all of us :)
>
>
> On Wed, Apr 1, 2009 at 2:10 PM, Jin Mingjian <jin.phd@gmail.com> wrote:
>
>> it is brave to submit such proposal:) The dependencies are complex at
>> real world. I have thought to submit this kind of gsoc proposal ago:)
>> .  But I am afraid it will become a toy:) For some practices in this
>> field, the shrinked size is limited, espeically for the more and more
>> cheap storage. But I think it deserves to encourage students to try.
>>
>> 2 problems,
>>
>> Class.forName() like things,
>> 3rd part library jars(seem no problem?), resources, jni-dll, or
>> thers(mentioned by Jimmy)
>> others?
>>
>> dynamics seem better and easier than static anaylsis.
>>
>>
>>
>>
>> 2009/3/30 Daniel Gong <daniel.gong.fudan@gmail.com>:
>> > Hi all,
>> >    I'm a postgraduate student from Fudan University, Shanghai, China.
>> >   This is my first time joining GSoC and I was not quite clear that I
>> > should exchange my ideas with possible mentors. I've submitted my
>> proposal
>> > today. It's lucky that I can still modify it.
>> >   Here is my proposal, any criticism and suggestions are welcome~
>> >
>> > =====================================================
>> >
>> > *Abstract:*
>> >
>> > The main idea to deal with the subject is to collect infomation from the
>> > input first and then generate smallest JRE according to the infomation
>> > collected and harmony classes dependences.
>> >
>> > *Detailed Description:*
>> >
>> > The implementation of the tool can be divided into 4 parts:
>> >
>> >   1. Infomation Collector. Automatic lexcial tool such as JLex may be
>> used
>> >   to analysis the input code and collect infomation including which
>> classes in
>> >   JRE does the project depend on.
>> >   2. Data structure design. Both project-jre class dependence and jre
>> inner
>> >   class dependence should be represented in an uniform way.
>> >   3. Class Lister. An algorithm should be designed to compute with the
>> >   dependence and list out the classes needed in the smallest JRE.
>> >   4. JRE Builder. Build a JRE according to the class list.
>> >
>> > *Initial* *Algorithm Design*
>> >
>> > Use a, b to represent two classes, and <a, b> to represent a relation
>> > between a & b, that is, a depends on b, in other words, b is refered in
>> > source code of a.
>> >
>> >   1. Given a project with its class set P, let set S = P and set M =
>> empty.
>> >
>> >   2. For each class c in S, search for dependence <c, *>, and for each
d
>> >   that <c, d> exists and d is not in M, put d in S. After searching for
>> <c,
>> >   *>, put c in M and delete it from S.
>> >   3. Loop step 2 until S is empty, return M - P.
>> >
>> > Here a project's class set includes its customized classes and classes in
>> > other packages that the project may link to.
>> >
>> > *Possible problems to solve*
>> >
>> > To collect the infomation, just reading the "import" part of the code is
>> not
>> > a precise strategy. A lexicial scan of the code from begin to end is a
>> must.
>> > Automatic lexcial tools can be used to solve the problem.
>> >
>> > JRE is not just a simple collection of classes needed. Getting familiar
>> with
>> > the structure of Harmony JRE is a must.
>> >
>> > *Draft Timeline*
>> >
>> >   - Week 1-2 Complete the design of data structure and the algorithm;
>> >   - Week 3-4 Implement the module of infomation collector;
>> >   - Week 5-6 Implement the algorithm to list out the classes;
>> >   - Week 7-8 Implement the JRE builder;
>> >   - Week 9 Debug the whole module and make necessary modifications
>> >   to successfully complete the subject.
>> >
>> > *Additional Information:*
>> >
>> > I've been learning and using Java since 3 years ago. Although my
>> > experience of Harmony is not that vast, my knowledge in programming,
>> > software architecture, compiler building and algorithm can help me to
>> learn
>> > fast and handle the problem.
>> >
>> > I'm 23 years old, living in Shanghai, China, attending Fudan University.
>> >
>> > =====================================================
>> >
>>
>
>
>
> --
> Yours sincerely,
> Charles Lee
>

Mime
View raw message