diff --git a/source/_layouts/site.genshi b/source/_layouts/site.genshi index c1910731af5a7767e8a31b380b6222538439c412_c291cmNlL19sYXlvdXRzL3NpdGUuZ2Vuc2hp..ce992f79f76077107d42cad191c89d2a24d3590c_c291cmNlL19sYXlvdXRzL3NpdGUuZ2Vuc2hp 100644 --- a/source/_layouts/site.genshi +++ b/source/_layouts/site.genshi @@ -5,6 +5,7 @@ section_data = { 'code': [ ('Home', 'index.html'), + ('Features', 'features.html'), ('Download', 'download.html'), ('Compatibility', 'compat.html'), ('Performance', 'http://speed.pypy.org'), diff --git a/source/download.txt b/source/download.txt index c1910731af5a7767e8a31b380b6222538439c412_c291cmNlL2Rvd25sb2FkLnR4dA==..ce992f79f76077107d42cad191c89d2a24d3590c_c291cmNlL2Rvd25sb2FkLnR4dA== 100644 --- a/source/download.txt +++ b/source/download.txt @@ -189,7 +189,7 @@ .. _SSE2: http://en.wikipedia.org/wiki/SSE2 .. _`ctypes`: http://www.python.org/doc/2.5.4/lib/module-ctypes.html .. _`contact us`: http://codespeak.net/mailman/listinfo/pypy-dev -.. _`sandboxing`: sandbox.html +.. _`sandboxing`: features.html#sandboxing .. _`stackless`: http://www.stackless.com/ .. _`greenlets`: http://codespeak.net/svn/greenlet/trunk/doc/greenlet.txt .. _`pypy-1.2.0.tar.bz2`: binaries/pypy-1.2.0.tar.bz2 diff --git a/source/features.txt b/source/features.txt new file mode 100644 index 0000000000000000000000000000000000000000..ce992f79f76077107d42cad191c89d2a24d3590c_c291cmNlL2ZlYXR1cmVzLnR4dA== --- /dev/null +++ b/source/features.txt @@ -0,0 +1,68 @@ +--- +layout: page +title: Features +--- + +Main features +=========================================================== + +PyPy implements Python language version 2.5. It supports all of the core +language, passing Python test suite (with minor modifications that were +already accepted in main python in newer versions). It supports most +of commonly used Python standard library modules. For known differences +with CPython, see our `compatibility`_ page. + +PyPy runs essentially only on Intel `x86 (IA-32)`_. On 64-bit platforms +you have to use the 32-bit compatibility mode, for now -- or `contact us`_ +to help! + +.. _`compatibility`: compat.html +.. _`x86 (IA-32)`: http://en.wikipedia.org/wiki/IA-32 +.. _`contact us`: http://codespeak.net/mailman/listinfo/pypy-dev + + +Sandboxing +=================== + +PyPy's *sandboxing* is a working prototype for the idea of running untrusted +user programs. Unlike other sandboxing approaches for Python, PyPy's does not +try to limit language features considered "unsafe". Instead we replace all +calls to external libraries (C or platform) with a stub that communicates +with an external process handling the policy. + +To run the sandboxed process, get a `sandboxed pypy-c`_ and run:: + + pypy_interact.py pypy-c-sandbox + +To read more about its features, go to `our dev site`_. + +.. _`sandboxed pypy-c`: download.html#sandboxed-version +.. _`our dev site`: http://codespeak.net/pypy/dist/pypy/doc/sandbox.html + + +Other features +=========================================================== + +PyPy has many secondary features and semi-independent +projects. We will mention here: + +* **the .NET backend:** you get a version of ``pypy-c`` that runs + natively in the .NET/CLI VM. Of particular interest is `the cli-jit + branch,`_ in which you can make a version of ``pypy-c`` which also + contains a high-level JIT compiler (it compiles your Python programs + Just in Time into CLR bytecodes, which are in turn compiled natively + by the VM). + +* **the Java backend:** PyPy can run on the Java VM, but more + care is needed to finish this project. Writing a backend for our + high-level JIT compiler would be excellent. `Contact us!`_ + +* **Other languages:** available in a `separate part of the repository`_, + we implemented other languages too: Prolog_ (almost complete), as + well as Smalltalk, JavaScript, Io, Scheme and Gameboy. + + +.. _`the cli-jit branch,`: http://codespeak.net/svn/pypy/branch/cli-jit/ +.. _`contact us!`: http://codespeak.net/mailman/listinfo/pypy-dev +.. _`separate part of the repository`: http://codespeak.net/svn/pypy/lang/ +.. _Prolog: http://codespeak.net/svn/pypy/lang/prolog diff --git a/source/index.txt b/source/index.txt index c1910731af5a7767e8a31b380b6222538439c412_c291cmNlL2luZGV4LnR4dA==..ce992f79f76077107d42cad191c89d2a24d3590c_c291cmNlL2luZGV4LnR4dA== 100644 --- a/source/index.txt +++ b/source/index.txt @@ -34,9 +34,9 @@ .. _`Python`: http://python.org/ .. _`faster`: http://speed.pypy.org/ .. _`(What is a JIT compiler?)`: http://en.wikipedia.org/wiki/Just-in-time_compilation -.. _`run untrusted code`: sandbox.html +.. _`run untrusted code`: features.html#sandboxing .. _`very compliant`: compat.html .. _`Python docs`: http://www.python.org/doc/2.5.4/ .. _`twisted`: http://twistedmatrix.com/ .. _`django`: http://www.djangoproject.com/ .. _`ctypes`: http://www.python.org/doc/2.5.4/lib/module-ctypes.html @@ -38,8 +38,8 @@ .. _`very compliant`: compat.html .. _`Python docs`: http://www.python.org/doc/2.5.4/ .. _`twisted`: http://twistedmatrix.com/ .. _`django`: http://www.djangoproject.com/ .. _`ctypes`: http://www.python.org/doc/2.5.4/lib/module-ctypes.html -.. _`other features`: more.html +.. _`other features`: features.html .. _`less space`: http://morepypy.blogspot.com/2009/10/gc-improvements.html .. _Compatibility: compat.html diff --git a/source/more.txt b/source/more.txt deleted file mode 100644 index c1910731af5a7767e8a31b380b6222538439c412_c291cmNlL21vcmUudHh0..0000000000000000000000000000000000000000 --- a/source/more.txt +++ /dev/null @@ -1,31 +0,0 @@ ---- -layout: page -title: More features ---- - -Other features -=========================================================== - -PyPy has many secondary features and semi-independent -projects. We will mention here: - -* **the .NET backend:** you get a version of ``pypy-c`` that runs - natively in the .NET/CLI VM. Of particular interest is `the cli-jit - branch,`_ in which you can make a version of ``pypy-c`` which also - contains a high-level JIT compiler (it compiles your Python programs - Just in Time into CLR bytecodes, which are in turn compiled natively - by the VM). - -* **the Java backend:** PyPy can run on the Java VM, but more - care is needed to finish this project. Writing a backend for our - high-level JIT compiler would be excellent. `Contact us!`_ - -* **Other languages:** available in a `separate part of the repository`_, - we implemented other languages too: Prolog_ (almost complete), as - well as Smalltalk, JavaScript, Io, Scheme and Gameboy. - - -.. _`the cli-jit branch,`: http://codespeak.net/svn/pypy/branch/cli-jit/ -.. _`contact us!`: http://codespeak.net/mailman/listinfo/pypy-dev -.. _`separate part of the repository`: http://codespeak.net/svn/pypy/lang/ -.. _Prolog: http://codespeak.net/svn/pypy/lang/prolog/trunk diff --git a/source/sandbox.txt b/source/sandbox.txt deleted file mode 100644 index c1910731af5a7767e8a31b380b6222538439c412_c291cmNlL3NhbmRib3gudHh0..0000000000000000000000000000000000000000 --- a/source/sandbox.txt +++ /dev/null @@ -1,19 +0,0 @@ ---- -layout: page -title: Sandboxing ---- - -PyPy's *sandboxing* is a working prototype for the idea of running untrusted -user programs. Unlike other sandboxing approaches for Python, PyPy's does not -try to limit language features considered "unsafe". Instead we replace all -calls to external libraries (C or platform) with a stub that communicates -with an external process handling the policy. - -To run the sandboxed process, get a `sandboxed pypy-c`_ and run:: - - pypy_interact.py pypy-c-sandbox - -To read more about its features, go to `our dev site`_. - -.. _`sandboxed pypy-c`: download.html#sandboxed-version -.. _`our dev site`: http://codespeak.net/pypy/dist/pypy/doc/sandbox.html