[pypy-svn] rev 1321 - pypy/trunk/doc/funding

tismer at codespeak.net tismer at codespeak.net
Tue Sep 16 14:04:49 CEST 2003


Author: tismer
Date: Tue Sep 16 14:04:48 2003
New Revision: 1321

Added:
   pypy/trunk/doc/funding/B6.wp05_bootstrap_runtime.txt
Removed:
   pypy/trunk/doc/funding/B6.wp04_bootstrapping_pypy.txt
Modified:
   pypy/trunk/doc/funding/B6.1_plan_introduction.txt
   pypy/trunk/doc/funding/B6.wp03_translation_of_rpython.txt
   pypy/trunk/doc/funding/B6.wp04_bootstrap_redesign.txt
Log:
splitted Wp4 into two and reworked.

Modified: pypy/trunk/doc/funding/B6.1_plan_introduction.txt
==============================================================================
--- pypy/trunk/doc/funding/B6.1_plan_introduction.txt	(original)
+++ pypy/trunk/doc/funding/B6.1_plan_introduction.txt	Tue Sep 16 14:04:48 2003
@@ -20,7 +20,7 @@
   applications.
 
 
-*XXX: AT the moment, I'm listing the working packages here.
+*XXX: At the moment, I'm listing the working packages here.
 I think this is no good. The WPs are now moved out of here.
 The text here gets shortened, the text outside gets
 extended.*
@@ -94,8 +94,9 @@
 we could target (C, Pyrex, others?).
 
 
-WP04_: _`Bootstrapping` PyPy
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+_`Bootstrapping` PyPy
+------------------------------
+
 The goal is to put interpreter (WP01_, WP02_) and translator
 (WP03_) together.
 
@@ -107,7 +108,9 @@
 first attempt. Analysis and redesign will have to be
 repeated until the result is satisfactory.
 
-**Part a): Specific Analysis and Redesign**
+
+WP04_: Specific Analysis and Redesign
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 The global translation of PyPy is going to raise particular
 problems, other than more general RPython programs do.
@@ -115,12 +118,14 @@
 bootstrap process and the main target of the translator,
 we need to investigate and isolate the
 particular problems, and redesign specific parts of PyPy
-to support translation, code generation and optimzation
+to support translation, code generation and optimisation
 better. This will also include a re-iteration of the interface
 design between application level and interpreter level
 until we reach overall convergence.
 
-**Part b): Low Level PyPy Runtime**
+
+WP05_: Low Level PyPy Runtime
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 In order to give a working environment to the translated RPython
 program, we need to build the low-level-specific **run-time**
@@ -145,18 +150,15 @@
 executed directly, but goes though a code generator which
 produces the actual machine code. This layer is highly configurable.
 
-The associated working packages
-should be done in parallel,since the results are rather dependant
-from each other.
 
-WP05_: Several Object Implementations
+WP06_: Several Object Implementations
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 develop **several object implementations** for the same types, as
 explicitly allowed by the standard object space, and develop heuristics
 to switch between implementations during execution. (see `Annex SOI`_)
 Study the efficiency of different approaches.
 
-WP06_: Translator Optimisations
+WP07_: Translator Optimisations
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 It should be identified, which **optimizations** would benefit
 from support from the translator. These are the optimizations
@@ -164,29 +166,25 @@
 large-scale code rewrites. (see `Annex OPT`)
 This includes design-considerations including the decision whether
 to use reference counting together with garbage collection,
-or to go for garbage collection, only.
-
-*XXX use a different WP for the next?*
+or whether to go for garbage collection, only.
 
 For each issue, work on **several solutions** when no one is obviously
-better than the other ones. The meta-programming underlying [[WP10]]
+better than the other ones. The meta-programming underlying WP07_
 -- namely the work on the translator instead of on the resulting code -- is
 what gives us the possibility of actually implementing several very
 different schemes. The outcome of this effort is of course not unique,
 but depends on the specific target of the optimization.
 There will be at least two efforts at the same time:
 
-- optimization towards maximum performance fo an integrated PyPy system
+- optimization towards maximum performance of an integrated PyPy system
 
 - optimization towards minimal code size for embedded systems.
 
 *add a lot more about this*
 
-WP07_: Integration of Existing Technology
+WP08_: Integration of Existing Technology
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-*XXX should this be split into two WPs?*
-
 There are existing projects, notably Psyco and Stackless,
 which have been traditionally depended on closely
 following CPython's code base.
@@ -208,8 +206,8 @@
 between different machines.
 
 Rewrite each one as a meta-component that hooks into the
-translator plus a dedicated run-time component. Further
-develop these technologies based on the results gathered in WP04_,
+translator plus a dedicated run-time component (WP05_). Further
+develop these technologies based on the results gathered in WP07_,
 e.g. identify when these technologies would guide specific
 choices among the solutions developed in WP05_ and studying
 several solutions in WP06_.

Modified: pypy/trunk/doc/funding/B6.wp03_translation_of_rpython.txt
==============================================================================
--- pypy/trunk/doc/funding/B6.wp03_translation_of_rpython.txt	(original)
+++ pypy/trunk/doc/funding/B6.wp03_translation_of_rpython.txt	Tue Sep 16 14:04:48 2003
@@ -38,12 +38,13 @@
 
 **Part b): Code Production**
 
+- Compare different low-level environments that
+  we could target (C, Pyrex, others?). Select at least
+  one suitable target.
 - Produce low-level code out of the data gathered in Part a).
 - Again investigate how this is best done (AST-guided translation or
   reverse-engeneering of the low-level control flow gathered by the
   annotation object space).
-- Compare different low-level environments that
-  we could target (C, Pyrex, others?).
 - Provide some measure for the efficiency of the generated
   code, in comparison to Standard Python.
 

Modified: pypy/trunk/doc/funding/B6.wp04_bootstrap_redesign.txt
==============================================================================
--- pypy/trunk/doc/funding/B6.wp04_bootstrap_redesign.txt	(original)
+++ pypy/trunk/doc/funding/B6.wp04_bootstrap_redesign.txt	Tue Sep 16 14:04:48 2003
@@ -18,7 +18,7 @@
 
 **Objectives**
 
-Title: Bootstrapping PyPy
+Title: Specific Analysis and Redesign
 
 - Putting interpreter (WP01_, WP02_) and translator (WP03_) together.
 - Enhancing the PyPy Design.
@@ -36,20 +36,6 @@
 - Re-iterate this until we agree to have reached
   an optimum solution.
   
-
-**Part b): Low Level PyPy Runtime**
-
-In order to give a working environment to the translated RPython
-program, we need to build the low-level-specific **run-time**
-components of PyPy.
-Most notably are the object layout, the memory management,
-and possibly threading support, as well as an
-efficient multimethod dispatch.
-The target language is not yet decided on. We might go different
-paths at the same time.
-If producing C code is a target, important
-parts can be directly re-used from CPython.
-
 
 
 **Deliverables**
@@ -58,3 +44,4 @@
 
 **Milestones and Expected Result**
 
+

Deleted: /pypy/trunk/doc/funding/B6.wp04_bootstrapping_pypy.txt
==============================================================================
--- /pypy/trunk/doc/funding/B6.wp04_bootstrapping_pypy.txt	Tue Sep 16 14:04:48 2003
+++ (empty file)
@@ -1,60 +0,0 @@
-.. include:: crossreferences.asc
-
-Workpackage Description
-========================
-
-================================ ==========================
-**Workpackage number**            04
--------------------------------- --------------------------
-**Start date or starting event**    0
-================================ ==========================
-
-================================= ======= ======= ======= ======= ======= ======= ======= =======
-**Participant id**                   X       Y    
---------------------------------- ------- ------- ------- ------- ------- ------- ------- -------
-**Person-months per participant**    3        3   
-================================= ======= ======= ======= ======= ======= ======= ======= =======
-
-
-**Objectives**
-
-Title: Bootstrapping PyPy
-
-- Putting interpreter (WP01_, WP02_) and translator (WP03_) together.
-- Enhancing the PyPy Design.
-
-
-**Description of work**
-
-
-**Part a): Specific Analysis and Redesign**
-
-- Investigate the particular problems that the
-  global translation of PyPy is going to raise.
-- Enhance and redesign parts of PyPy as needed
-  to give best support to the translation of RPython.
-- Re-iterate this until we agree to have reached
-  an optimum solution.
-  
-
-**Part b): Low Level PyPy Runtime**
-
-In order to give a working environment to the translated RPython
-program, we need to build the low-level-specific **run-time**
-components of PyPy.
-Most notably are the object layout, the memory management,
-and possibly threading support, as well as an
-efficient multimethod dispatch.
-The target language is not yet decided on. We might go different
-paths at the same time.
-If producing C code is a target, important
-parts can be directly re-used from CPython.
-
-
-
-**Deliverables**
-
-
-
-**Milestones and Expected Result**
-

Added: pypy/trunk/doc/funding/B6.wp05_bootstrap_runtime.txt
==============================================================================
--- (empty file)
+++ pypy/trunk/doc/funding/B6.wp05_bootstrap_runtime.txt	Tue Sep 16 14:04:48 2003
@@ -0,0 +1,52 @@
+.. include:: crossreferences.asc
+
+Workpackage Description
+========================
+
+================================ ==========================
+**Workpackage number**            05
+-------------------------------- --------------------------
+**Start date or starting event**    0
+================================ ==========================
+
+================================= ======= ======= ======= ======= ======= ======= ======= =======
+**Participant id**                   X       Y    
+--------------------------------- ------- ------- ------- ------- ------- ------- ------- -------
+**Person-months per participant**    2       2   
+================================= ======= ======= ======= ======= ======= ======= ======= =======
+
+
+**Objectives**
+
+Title: Low Level PyPy Runtime
+
+- Providing a Runtime Library for PyPy
+
+
+**Description of work**
+
+
+In order to give a working environment to the translated RPython
+program, we need to build the low-level-specific **run-time**
+components of PyPy.
+
+- Design the object layout and implement it.
+- Decide about memory management and implement it.
+- Consider threading support and implement it. Make sure
+  that the other components are thread-aware.
+- Design and implement an efficient multimethod dispatch.
+
+The target language is not yet decided on. We might go different
+paths at the same time.
+If producing C code is a target, important
+parts can be directly re-used from CPython.
+
+
+
+**Deliverables**
+
+DL??? Runtime Library for PyPy
+
+**Milestones and Expected Result**
+
+


More information about the Pypy-commit mailing list