Author: Maciej Fijalkowski <fij...@gmail.com> Branch: Changeset: r61547:a9263de83cad Date: 2013-02-21 16:19 +0200 http://bitbucket.org/pypy/pypy/changeset/a9263de83cad/
Log: fight with links diff --git a/pypy/doc/_ref.txt b/pypy/doc/_ref.txt --- a/pypy/doc/_ref.txt +++ b/pypy/doc/_ref.txt @@ -1,24 +1,18 @@ .. _`ctypes_configure/doc/sample.py`: https://bitbucket.org/pypy/pypy/src/default/ctypes_configure/doc/sample.py -.. _`demo/`: https://bitbucket.org/pypy/pypy/src/default/demo/ +.. _`dotviewer/`: https://bitbucket.org/pypy/pypy/src/default/dotviewer/ .. _`lib-python/`: https://bitbucket.org/pypy/pypy/src/default/lib-python/ .. _`lib-python/2.7/dis.py`: https://bitbucket.org/pypy/pypy/src/default/lib-python/2.7/dis.py .. _`lib_pypy/`: https://bitbucket.org/pypy/pypy/src/default/lib_pypy/ .. _`lib_pypy/greenlet.py`: https://bitbucket.org/pypy/pypy/src/default/lib_pypy/greenlet.py .. _`lib_pypy/pypy_test/`: https://bitbucket.org/pypy/pypy/src/default/lib_pypy/pypy_test/ .. _`lib_pypy/tputil.py`: https://bitbucket.org/pypy/pypy/src/default/lib_pypy/tputil.py -.. _`pypy/annotation`: -.. _`pypy/annotation/`: https://bitbucket.org/pypy/pypy/src/default/pypy/annotation/ -.. _`pypy/annotation/annrpython.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/annotation/annrpython.py -.. _`pypy/annotation/binaryop.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/annotation/binaryop.py -.. _`pypy/annotation/builtin.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/annotation/builtin.py .. _`pypy/bin/`: https://bitbucket.org/pypy/pypy/src/default/pypy/bin/ -.. _`pypy/bin/translatorshell.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/bin/translatorshell.py .. _`pypy/config/`: https://bitbucket.org/pypy/pypy/src/default/pypy/config/ .. _`pypy/config/pypyoption.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/config/pypyoption.py -.. _`pypy/config/translationoption.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/config/translationoption.py .. _`pypy/doc/`: https://bitbucket.org/pypy/pypy/src/default/pypy/doc/ .. _`pypy/doc/config/`: https://bitbucket.org/pypy/pypy/src/default/pypy/doc/config/ .. _`pypy/doc/discussion/`: https://bitbucket.org/pypy/pypy/src/default/pypy/doc/discussion/ +.. _`pypy/goal/`: https://bitbucket.org/pypy/pypy/src/default/pypy/goal/ .. _`pypy/interpreter`: .. _`pypy/interpreter/`: https://bitbucket.org/pypy/pypy/src/default/pypy/interpreter/ .. _`pypy/interpreter/argument.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/interpreter/argument.py @@ -54,11 +48,8 @@ .. _`pypy/module`: .. _`pypy/module/`: https://bitbucket.org/pypy/pypy/src/default/pypy/module/ .. _`pypy/module/__builtin__/__init__.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/module/__builtin__/__init__.py -.. _`pypy/objspace`: .. _`pypy/objspace/`: https://bitbucket.org/pypy/pypy/src/default/pypy/objspace/ -.. _`pypy/objspace/flow`: .. _`pypy/objspace/flow/`: https://bitbucket.org/pypy/pypy/src/default/pypy/objspace/flow/ -.. _`pypy/objspace/flow/model.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/objspace/flow/model.py .. _`pypy/objspace/std`: .. _`pypy/objspace/std/`: https://bitbucket.org/pypy/pypy/src/default/pypy/objspace/std/ .. _`pypy/objspace/std/listtype.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/objspace/std/listtype.py @@ -70,49 +61,55 @@ .. _`pypy/objspace/std/transparent.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/objspace/std/transparent.py .. _`pypy/objspace/std/tupleobject.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/objspace/std/tupleobject.py .. _`pypy/objspace/std/tupletype.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/objspace/std/tupletype.py -.. _`pypy/rlib`: -.. _`pypy/rlib/`: https://bitbucket.org/pypy/pypy/src/default/pypy/rlib/ -.. _`pypy/rlib/listsort.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rlib/listsort.py -.. _`pypy/rlib/nonconst.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rlib/nonconst.py -.. _`pypy/rlib/objectmodel.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rlib/objectmodel.py -.. _`pypy/rlib/parsing/`: https://bitbucket.org/pypy/pypy/src/default/pypy/rlib/parsing/ -.. _`pypy/rlib/parsing/tree.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rlib/parsing/tree.py -.. _`pypy/rlib/rarithmetic.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rlib/rarithmetic.py -.. _`pypy/rlib/rbigint.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rlib/rbigint.py -.. _`pypy/rlib/rrandom.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rlib/rrandom.py -.. _`pypy/rlib/rsocket.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rlib/rsocket.py -.. _`pypy/rlib/streamio.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rlib/streamio.py -.. _`pypy/rlib/test`: https://bitbucket.org/pypy/pypy/src/default/pypy/rlib/test/ -.. _`pypy/rlib/unroll.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rlib/unroll.py -.. _`pypy/rpython`: -.. _`pypy/rpython/`: https://bitbucket.org/pypy/pypy/src/default/pypy/rpython/ -.. _`pypy/rpython/lltypesystem/`: https://bitbucket.org/pypy/pypy/src/default/pypy/rpython/lltypesystem/ -.. _`pypy/rpython/lltypesystem/lltype.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rpython/lltypesystem/lltype.py -.. _`pypy/rpython/memory/`: https://bitbucket.org/pypy/pypy/src/default/pypy/rpython/memory/ -.. _`pypy/rpython/memory/gc/generation.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rpython/memory/gc/generation.py -.. _`pypy/rpython/memory/gc/hybrid.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rpython/memory/gc/hybrid.py -.. _`pypy/rpython/memory/gc/markcompact.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rpython/memory/gc/markcompact.py -.. _`pypy/rpython/memory/gc/marksweep.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rpython/memory/gc/marksweep.py -.. _`pypy/rpython/memory/gc/minimarkpage.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rpython/memory/gc/minimarkpage.py -.. _`pypy/rpython/memory/gc/semispace.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rpython/memory/gc/semispace.py -.. _`pypy/rpython/ootypesystem/`: https://bitbucket.org/pypy/pypy/src/default/pypy/rpython/ootypesystem/ -.. _`pypy/rpython/ootypesystem/ootype.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rpython/ootypesystem/ootype.py -.. _`pypy/rpython/rint.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rpython/rint.py -.. _`pypy/rpython/rlist.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rpython/rlist.py -.. _`pypy/rpython/rmodel.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rpython/rmodel.py -.. _`pypy/rpython/rtyper.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rpython/rtyper.py -.. _`pypy/rpython/test/test_llinterp.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/rpython/test/test_llinterp.py .. _`pypy/tool/`: https://bitbucket.org/pypy/pypy/src/default/pypy/tool/ .. _`pypy/tool/algo/`: https://bitbucket.org/pypy/pypy/src/default/pypy/tool/algo/ .. _`pypy/tool/pytest/`: https://bitbucket.org/pypy/pypy/src/default/pypy/tool/pytest/ -.. _`pypy/tool/traceconfig.py`: https://bitbucket.org/pypy/pypy/src/default/pypy/tool/traceconfig.py -.. _`pypy/translator`: -.. _`pypy/translator/`: https://bitbucket.org/pypy/pypy/src/default/pypy/translator/ -.. _`pypy/translator/backendopt/`: https://bitbucket.org/pypy/pypy/src/default/pypy/translator/backendopt/ -.. _`pypy/translator/c/`: https://bitbucket.org/pypy/pypy/src/default/pypy/translator/c/ -.. _`pypy/translator/c/src/stacklet/`: https://bitbucket.org/pypy/pypy/src/default/pypy/translator/c/src/stacklet/ -.. _`pypy/translator/c/src/stacklet/stacklet.h`: https://bitbucket.org/pypy/pypy/src/default/pypy/translator/c/src/stacklet/stacklet.h -.. _`pypy/translator/cli/`: https://bitbucket.org/pypy/pypy/src/default/pypy/translator/cli/ -.. _`pypy/translator/goal/`: https://bitbucket.org/pypy/pypy/src/default/pypy/translator/goal/ -.. _`pypy/translator/jvm/`: https://bitbucket.org/pypy/pypy/src/default/pypy/translator/jvm/ -.. _`pypy/translator/tool/`: https://bitbucket.org/pypy/pypy/src/default/pypy/translator/tool/ +.. _`rpython/annotator`: +.. _`rpython/annotator/`: https://bitbucket.org/pypy/pypy/src/default/rpython/annotator/ +.. _`rpython/annotator/annrpython.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/annotator/annrpython.py +.. _`rpython/annotator/binaryop.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/annotator/binaryop.py +.. _`rpython/annotator/builtin.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/annotator/builtin.py +.. _`rpython/bin/translatorshell.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/bin/translatorshell.py +.. _`rpython/config/`: https://bitbucket.org/pypy/pypy/src/default/rpython/config/ +.. _`rpython/config/translationoption.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/config/translationoption.py +.. _`rpython/flowspace/`: https://bitbucket.org/pypy/pypy/src/default/rpython/flowspace/ +.. _`rpython/flowspace/model.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/flowspace/model.py +.. _`rpython/rlib`: +.. _`rpython/rlib/`: https://bitbucket.org/pypy/pypy/src/default/rpython/rlib/ +.. _`rpython/rlib/listsort.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rlib/listsort.py +.. _`rpython/rlib/nonconst.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rlib/nonconst.py +.. _`rpython/rlib/objectmodel.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rlib/objectmodel.py +.. _`rpython/rlib/parsing/`: https://bitbucket.org/pypy/pypy/src/default/rpython/rlib/parsing/ +.. _`rpython/rlib/parsing/tree.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rlib/parsing/tree.py +.. _`rpython/rlib/rarithmetic.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rlib/rarithmetic.py +.. _`rpython/rlib/rbigint.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rlib/rbigint.py +.. _`rpython/rlib/rrandom.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rlib/rrandom.py +.. _`rpython/rlib/rsocket.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rlib/rsocket.py +.. _`rpython/rlib/streamio.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rlib/streamio.py +.. _`rpython/rlib/test`: https://bitbucket.org/pypy/pypy/src/default/rpython/rlib/test/ +.. _`rpython/rlib/unroll.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rlib/unroll.py +.. _`rpython/rtyper`: +.. _`rpython/rtyper/`: https://bitbucket.org/pypy/pypy/src/default/rpython/rtyper/ +.. _`rpython/rtyper/lltypesystem/`: https://bitbucket.org/pypy/pypy/src/default/rpython/rtyper/lltypesystem/ +.. _`rpython/rtyper/lltypesystem/lltype.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rtyper/lltypesystem/lltype.py +.. _`rpython/rtyper/memory/`: https://bitbucket.org/pypy/pypy/src/default/rpython/rtyper/memory/ +.. _`rpython/rtyper/memory/gc/generation.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rtyper/memory/gc/generation.py +.. _`rpython/rtyper/memory/gc/hybrid.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rtyper/memory/gc/hybrid.py +.. _`rpython/rtyper/memory/gc/minimarkpage.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rtyper/memory/gc/minimarkpage.py +.. _`rpython/rtyper/memory/gc/semispace.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rtyper/memory/gc/semispace.py +.. _`rpython/rtyper/ootypesystem/`: https://bitbucket.org/pypy/pypy/src/default/rpython/rtyper/ootypesystem/ +.. _`rpython/rtyper/ootypesystem/ootype.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rtyper/ootypesystem/ootype.py +.. _`rpython/rtyper/rint.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rtyper/rint.py +.. _`rpython/rtyper/rlist.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rtyper/rlist.py +.. _`rpython/rtyper/rmodel.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rtyper/rmodel.py +.. _`rpython/rtyper/rtyper.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rtyper/rtyper.py +.. _`rpython/rtyper/test/test_llinterp.py`: https://bitbucket.org/pypy/pypy/src/default/rpython/rtyper/test/test_llinterp.py +.. _`rpython/translator`: +.. _`rpython/translator/`: https://bitbucket.org/pypy/pypy/src/default/rpython/translator/ +.. _`rpython/translator/backendopt/`: https://bitbucket.org/pypy/pypy/src/default/rpython/translator/backendopt/ +.. _`rpython/translator/c/`: https://bitbucket.org/pypy/pypy/src/default/rpython/translator/c/ +.. _`rpython/translator/c/src/stacklet/`: https://bitbucket.org/pypy/pypy/src/default/rpython/translator/c/src/stacklet/ +.. _`rpython/translator/c/src/stacklet/stacklet.h`: https://bitbucket.org/pypy/pypy/src/default/rpython/translator/c/src/stacklet/stacklet.h +.. _`rpython/translator/cli/`: https://bitbucket.org/pypy/pypy/src/default/rpython/translator/cli/ +.. _`rpython/translator/jvm/`: https://bitbucket.org/pypy/pypy/src/default/rpython/translator/jvm/ +.. _`rpython/translator/tool/`: https://bitbucket.org/pypy/pypy/src/default/rpython/translator/tool/ diff --git a/pypy/doc/coding-guide.rst b/pypy/doc/coding-guide.rst --- a/pypy/doc/coding-guide.rst +++ b/pypy/doc/coding-guide.rst @@ -328,7 +328,7 @@ **builtin functions** A number of builtin functions can be used. The precise set can be - found in `pypy/annotation/builtin.py`_ (see ``def builtin_xxx()``). + found in `rpython/annotator/builtin.py`_ (see ``def builtin_xxx()``). Some builtin functions may be limited in what they support, though. ``int, float, str, ord, chr``... are available as simple conversion diff --git a/pypy/doc/configuration.rst b/pypy/doc/configuration.rst --- a/pypy/doc/configuration.rst +++ b/pypy/doc/configuration.rst @@ -188,7 +188,7 @@ toolchain`_ toolchain, have two separate sets of options. The translation toolchain options can be found on the ``config`` attribute of all ``TranslationContext`` -instances and are described in `pypy/config/translationoption.py`_. The interpreter options +instances and are described in `rpython/config/translationoption.py`_. The interpreter options are attached to the object space, also under the name ``config`` and are described in `pypy/config/pypyoption.py`_. diff --git a/pypy/doc/garbage_collection.rst b/pypy/doc/garbage_collection.rst --- a/pypy/doc/garbage_collection.rst +++ b/pypy/doc/garbage_collection.rst @@ -42,7 +42,7 @@ Two arenas of equal size, with only one arena in use and getting filled with new objects. When the arena is full, the live objects are copied into the other arena using Cheney's algorithm. The old arena is then -cleared. See `pypy/rpython/memory/gc/semispace.py`_. +cleared. See `rpython/rtyper/memory/gc/semispace.py`_. On Unix the clearing is done by reading ``/dev/zero`` into the arena, which is extremely memory efficient at least on Linux: it lets the @@ -55,7 +55,7 @@ Generational GC --------------- -This is a two-generations GC. See `pypy/rpython/memory/gc/generation.py`_. +This is a two-generations GC. See `rpython/rtyper/memory/gc/generation.py`_. It is implemented as a subclass of the Semispace copying collector. It adds a nursery, which is a chunk of the current semispace. Its size is @@ -86,7 +86,7 @@ Each generation is collected much less often than the previous one. The division of the generations is slightly more complicated than just nursery / semispace / external; see the diagram at the start of the -source code, in `pypy/rpython/memory/gc/hybrid.py`_. +source code, in `rpython/rtyper/memory/gc/hybrid.py`_. Mark & Compact GC ----------------- @@ -161,7 +161,7 @@ to the old stage. The dying case 2 objects are immediately freed. - The old stage is an area of memory containing old (small) objects. It - is handled by `pypy/rpython/memory/gc/minimarkpage.py`_. It is organized + is handled by `rpython/rtyper/memory/gc/minimarkpage.py`_. It is organized as "arenas" of 256KB or 512KB, subdivided into "pages" of 4KB or 8KB. Each page can either be free, or contain small objects of all the same size. Furthermore at any point in time each object location can be diff --git a/pypy/doc/getting-started-dev.rst b/pypy/doc/getting-started-dev.rst --- a/pypy/doc/getting-started-dev.rst +++ b/pypy/doc/getting-started-dev.rst @@ -172,23 +172,23 @@ ``xxxobject.py`` contain respectively the definition of the type and its (default) implementation. -* `pypy/translator`_ contains the code analysis and generation stuff. +* `rpython/translator`_ contains the code analysis and generation stuff. Start reading from translator.py, from which it should be easy to follow the pieces of code involved in the various translation phases. -* `pypy/annotation`_ contains the data model for the type annotation that +* `rpython/annotator`_ contains the data model for the type annotation that can be inferred about a graph. The graph "walker" that uses this is in - `pypy/annotation/annrpython.py`_. + `rpython/annotator/annrpython.py`_. -* `pypy/rpython`_ contains the code of the RPython typer. The typer transforms +* `rpython/rtyper`_ contains the code of the RPython typer. The typer transforms annotated flow graphs in a way that makes them very similar to C code so that they can be easy translated. The graph transformations are controlled - by the code in `pypy/rpython/rtyper.py`_. The object model that is used can - be found in `pypy/rpython/lltypesystem/lltype.py`_. For each RPython type + by the code in `rpython/rtyper/rtyper.py`_. The object model that is used can + be found in `rpython/rtyper/lltypesystem/lltype.py`_. For each RPython type there is a file rxxxx.py that contains the low level functions needed for this type. -* `pypy/rlib`_ contains the `RPython standard library`_, things that you can +* `rpython/rlib`_ contains the `RPython standard library`_, things that you can use from rpython. .. _`RPython standard library`: rlib.html @@ -319,10 +319,10 @@ Demos ------- -The `demo/`_ directory contains examples of various aspects of PyPy, -ranging from running regular Python programs (that we used as compliance goals) -over experimental distribution mechanisms to examples translating -sufficiently static programs into low level code. +The `example-interpreter`_ repository contains an example interpreter +written using the RPython translation toolchain. + +.. _`example-interpreter`: https://bitbucket.org/pypy/example-interpreter Additional Tools for running (and hacking) PyPy ----------------------------------------------- diff --git a/pypy/doc/rtyper.rst b/pypy/doc/rtyper.rst --- a/pypy/doc/rtyper.rst +++ b/pypy/doc/rtyper.rst @@ -4,7 +4,7 @@ .. contents:: -The RPython Typer lives in the directory `pypy/rpython/`_. +The RPython Typer lives in the directory `rpython/rtyper/`_. Overview @@ -52,7 +52,7 @@ where -- in C notation -- all three variables v1, v2 and v3 are typed ``int``. This is done by attaching an attribute ``concretetype`` to v1, v2 and v3 (which might be instances of Variable or possibly Constant). In our model, -this ``concretetype`` is ``pypy.rpython.lltypesystem.lltype.Signed``. Of +this ``concretetype`` is ``rpython.rtyper.lltypesystem.lltype.Signed``. Of course, the purpose of replacing the operation called ``add`` with ``int_add`` is that code generators no longer have to worry about what kind of addition (or concatenation maybe?) it means. @@ -66,7 +66,7 @@ each operation. In both cases the analysis of an operation depends on the annotations of its input arguments. This is reflected in the usage of the same ``__extend__`` syntax in the source files (compare e.g. -`pypy/annotation/binaryop.py`_ and `pypy/rpython/rint.py`_). +`rpython/annotator/binaryop.py`_ and `rpython/rtyper/rint.py`_). The analogy stops here, though: while it runs, the Annotator is in the middle of computing the annotations, so it might need to reflow and generalize until @@ -104,7 +104,7 @@ implementations for the same high-level operations. This is the reason for turning representations into explicit objects. -The base Repr class is defined in `pypy/rpython/rmodel.py`_. Most of the +The base Repr class is defined in `rpython/rtyper/rmodel.py`_. Most of the ``rpython/r*.py`` files define one or a few subclasses of Repr. The method getrepr() of the RTyper will build and cache a single Repr instance per SomeXxx() instance; moreover, two SomeXxx() instances that are equal get the @@ -131,9 +131,9 @@ The RPython Typer uses a standard low-level model which we believe can correspond rather directly to various target languages such as C. This model is implemented in the first part of -`pypy/rpython/lltypesystem/lltype.py`_. +`rpython/rtyper/lltypesystem/lltype.py`_. -The second part of `pypy/rpython/lltypesystem/lltype.py`_ is a runnable +The second part of `rpython/rtyper/lltypesystem/lltype.py`_ is a runnable implementation of these types, for testing purposes. It allows us to write and test plain Python code using a malloc() function to obtain and manipulate structures and arrays. This is useful for example to implement and test @@ -147,7 +147,7 @@ Here is a quick tour: - >>> from pypy.rpython.lltypesystem.lltype import * + >>> from rpython.rtyper.lltypesystem.lltype import * Here are a few primitive low-level types, and the typeOf() function to figure them out: @@ -191,7 +191,7 @@ types like list in this elementary world. The ``malloc()`` function is a kind of placeholder, which must eventually be provided by the code generator for the target platform; but as we have just seen its Python implementation in -`pypy/rpython/lltypesystem/lltype.py`_ works too, which is primarily useful for +`rpython/rtyper/lltypesystem/lltype.py`_ works too, which is primarily useful for testing, interactive exploring, etc. The argument to ``malloc()`` is the structure type directly, but it returns a @@ -245,7 +245,7 @@ +++++++++++++++ Structure types are built as instances of -``pypy.rpython.lltypesystem.lltype.Struct``:: +``rpython.rtyper.lltypesystem.lltype.Struct``:: MyStructType = Struct('somename', ('field1', Type1), ('field2', Type2)...) MyStructType = GcStruct('somename', ('field1', Type1), ('field2', Type2)...) @@ -277,7 +277,7 @@ +++++++++++ An array type is built as an instance of -``pypy.rpython.lltypesystem.lltype.Array``:: +``rpython.rtyper.lltypesystem.lltype.Array``:: MyIntArray = Array(Signed) MyOtherArray = Array(MyItemType) @@ -316,7 +316,7 @@ with care: the bigger structure of which they are part of could be freed while the Ptr to the substructure is still in use. In general, it is a good idea to avoid passing around pointers to inlined substructures of malloc()ed structures. -(The testing implementation of `pypy/rpython/lltypesystem/lltype.py`_ checks to some +(The testing implementation of `rpython/rtyper/lltypesystem/lltype.py`_ checks to some extent that you are not trying to use a pointer to a structure after its container has been freed, using weak references. But pointers to non-GC structures are not officially meant to be weak references: using them after what @@ -429,7 +429,7 @@ change needed to the Annotator to allow it to perform type inference of our very-low-level snippets of code. -See for example `pypy/rpython/rlist.py`_. +See for example `rpython/rtyper/rlist.py`_. .. _`oo type`: @@ -441,10 +441,10 @@ targeting low level backends such as C, but it is not good enough for targeting higher level backends such as .NET CLI or Java JVM, so a new object oriented model has been introduced. This model is -implemented in the first part of `pypy/rpython/ootypesystem/ootype.py`_. +implemented in the first part of `rpython/rtyper/ootypesystem/ootype.py`_. As for the low-level typesystem, the second part of -`pypy/rpython/ootypesystem/ootype.py`_ is a runnable implementation of +`rpython/rtyper/ootypesystem/ootype.py`_ is a runnable implementation of these types, for testing purposes. @@ -751,7 +751,7 @@ The LLInterpreter is a simple piece of code that is able to interpret flow graphs. This is very useful for testing purposes, especially if you work on the RPython Typer. The most useful interface for it is the ``interpret`` -function in the file `pypy/rpython/test/test_llinterp.py`_. It takes as +function in the file `rpython/rtyper/test/test_llinterp.py`_. It takes as arguments a function and a list of arguments with which the function is supposed to be called. Then it generates the flow graph, annotates it according to the types of the arguments you passed to it and runs the diff --git a/pypy/doc/stackless.rst b/pypy/doc/stackless.rst --- a/pypy/doc/stackless.rst +++ b/pypy/doc/stackless.rst @@ -29,7 +29,7 @@ on 32-bit or a complete megabyte on 64-bit. Moreover, the feature is only available (so far) on x86 and x86-64 CPUs; for other CPUs you need to add a short page of custom assembler to -`pypy/translator/c/src/stacklet/`_. +`rpython/translator/c/src/stacklet/`_. Theory @@ -271,7 +271,7 @@ Continulets are internally implemented using stacklets, which is the generic RPython-level building block for "one-shot continuations". For more information about them please see the documentation in the C source -at `pypy/translator/c/src/stacklet/stacklet.h`_. +at `rpython/translator/c/src/stacklet/stacklet.h`_. The module ``pypy.rlib.rstacklet`` is a thin wrapper around the above functions. The key point is that new() and switch() always return a diff --git a/pypy/doc/tool/makeref.py b/pypy/doc/tool/makeref.py --- a/pypy/doc/tool/makeref.py +++ b/pypy/doc/tool/makeref.py @@ -1,7 +1,7 @@ import py import pypy -pypydir = py.path.local(pypy.__file__).join('..', '..') +pypydir = py.path.local(pypy.__file__).join('..') distdir = pypydir.dirpath() issue_url = 'http://bugs.pypy.org/issue/pypy-dev/' bitbucket_url = 'https://bitbucket.org/pypy/pypy/src/default/' diff --git a/pypy/doc/translation.rst b/pypy/doc/translation.rst --- a/pypy/doc/translation.rst +++ b/pypy/doc/translation.rst @@ -90,7 +90,7 @@ (although these steps are not quite as distinct as you might think from this presentation). -There is an `interactive interface`_ called `pypy/bin/translatorshell.py`_ to the +There is an `interactive interface`_ called `rpython/bin/translatorshell.py`_ to the translation process which allows you to interactively work through these stages. @@ -116,7 +116,7 @@ which are the basic data structures of the translation process. -All these types are defined in `pypy/objspace/flow/model.py`_ (which is a rather +All these types are defined in `rpython/flowspace/model.py`_ (which is a rather important module in the PyPy source base, to reinforce the point). The flow graph of a function is represented by the class ``FunctionGraph``. _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit