harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Daniel Gong <daniel.gong.fu...@gmail.com>
Subject Re: [GSoC] My proposal
Date Mon, 30 Mar 2009 14:55:04 GMT
Thanks very much. Do you have some suggestion? :-)

Daniel Gong

2009/3/30 Alexei Fedotov <alexei.fedotov@gmail.com>

> I like this pretty nice proposal. It helped me to understand what the
> task was about. :-)
>
>
>
> On Mon, Mar 30, 2009 at 1:01 PM, Daniel Gong
> <daniel.gong.fudan@gmail.com> wrote:
> > 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.
> >
> > =====================================================
> >
>
>
>
> --
> With best regards / с наилучшими пожеланиями,
> Alexei Fedotov / Алексей Федотов,
> http://www.telecom-express.ru/
> http://people.apache.org/~aaf/
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message