Author: Rami Chowdhury <[email protected]>
Branch: improve-docs
Changeset: r66367:85eb4f2b2c2d
Date: 2013-08-27 17:54 +0100
http://bitbucket.org/pypy/pypy/changeset/85eb4f2b2c2d/

Log:    (mjacob, necaris) Improve documentation index page

        Add a getting started section, factor out installation / building to
        their own sections, and update links.

diff --git a/pypy/doc/getting-started.rst b/pypy/doc/getting-started.rst
--- a/pypy/doc/getting-started.rst
+++ b/pypy/doc/getting-started.rst
@@ -4,31 +4,10 @@
 .. contents::
 
 
-What is PyPy ?
---------------
-
-In common parlance, PyPy has been used to mean two things.  The first is the
-:doc:`RPython translation toolchain <rpython:translation>`, which is a 
framework for generating
-dynamic programming language implementations.  And the second is one
-particular implementation that is so generated --
-an implementation of the Python_ programming language written in
-Python itself.  It is designed to be flexible and easy to experiment with.
-
-This double usage has proven to be confusing, and we are trying to move
-away from using the word PyPy to mean both things.  From now on we will
-try to use PyPy to only mean the Python implementation, and say the
-:doc:`RPython translation toolchain <rpython:translation>` when we mean the 
framework.  Some older
-documents, presentations, papers and videos will still have the old
-usage.  You are hereby warned.
-
-We target a large variety of platforms, small and large, by providing a
-compiler toolsuite that can produce custom Python versions.  Platform, memory
-and threading models, as well as the JIT compiler itself, are aspects of the
-translation process - as opposed to encoding low level details into the
-language implementation itself. :doc:`more... <architecture>`
 
 .. _Python: http://docs.python.org/reference/
 
+:doc:`Downloading and installing PyPy <install>`
 
 Just the facts
 --------------
@@ -105,6 +84,8 @@
 .. _pip: http://pypi.python.org/pypi/pip
 
 
+
+
 Clone the repository
 ~~~~~~~~~~~~~~~~~~~~
 
diff --git a/pypy/doc/index-old.rst b/pypy/doc/index-old.rst
deleted file mode 100644
--- a/pypy/doc/index-old.rst
+++ /dev/null
@@ -1,127 +0,0 @@
-Welcome to PyPy
-===============
-
-The PyPy project aims to produce a flexible and fast Python_
-implementation.  This page documents the development of the PyPy
-project itself. If you don't know what PyPy is, consult the `PyPy
-website`_. If you just want to use PyPy, consult the `download`_ page
-and the :doc:`getting-started-python` documents. If you want to help
-develop PyPy -- keep reading!
-
-PyPy is written in a language called `RPython`_, which is suitable for
-writing dynamic language interpreters (and not much else). RPython is
-a subset of Python and is itself written in Python.  If you'd like to
-learn more about RPython, `XXXX` should provide a
-reasonable overview.
-
-**If you would like to contribute to PyPy**, please read :doc:`how to
-contribute <how-to-contribute>` first.  PyPy's development style is somewhat 
different to
-that of many other software projects and it often surprises
-newcomers. What is **not** necessary is an academic background from
-university in writing compilers -- much of it does not apply to PyPy
-any way.
-
-All of the documentation and source code is available under the MIT license,
-unless otherwise specified. Consult :source:`LICENSE`.
-
-.. _Python: http://python.org/
-.. _download: http://pypy.org/download.html
-.. _PyPy website: http://pypy.org/
-.. _RPython: http://rpython.readthedocs.org/
-
-.. toctree::
-   :hidden:
-
-   getting-started-python
-   how-to-contribute
-
-
-Index of various topics:
-------------------------
-
-* :doc:`getting-started`: how to install and run the PyPy Python interpreter
-
-* :doc:`FAQ <faq>`: some frequently asked questions.
-
-* `Release 2.1.0`_: the latest official release
-
-* `PyPy Blog`_: news and status info about PyPy
-
-* :doc:`Papers <extradoc>`: Academic papers, talks, and related projects
-
-* `speed.pypy.org`_: Daily benchmarks of how fast PyPy is
-
-* :doc:`project-ideas`: In case you want to get your feet wet...
-
-* :doc:`More stuff <project-documentation>`: this is a collection of 
documentation that's there, but not
-  particularly organized
-
-.. _PyPy blog: http://morepypy.blogspot.com/
-.. _Release 2.1.0: http://pypy.org/download.html
-.. _speed.pypy.org: http://speed.pypy.org
-
-.. toctree::
-   :hidden:
-
-   getting-started
-   faq
-   extradoc
-   project-ideas
-   project-documentation
-
-
-Documentation for the PyPy Python Interpreter
----------------------------------------------
-
-New features of PyPy's Python Interpreter and
-Translation Framework:
-
-  * :doc:`cpython_differences`
-  * :doc:`objspace-proxies` - transparent proxy documentation
-  * :doc:`Continulets and greenlets <stackless>` - documentation about 
stackless features
-  * :doc:`jit-hooks`
-  * :doc:`sandbox`
-  * :doc:`Garbage collection environment variables <gc_info>`
-
-.. toctree::
-   :hidden:
-
-   cpython_differences
-   objspace-proxies
-   stackless
-   jit-hooks
-   sandbox
-   gc_info
-
-
-.. _contact:
-
-Mailing lists, bug tracker, IRC channel
----------------------------------------------
-
-* `Development mailing list`_: development and conceptual
-  discussions.
-
-* `Mercurial commit mailing list`_: updates to code and
-  documentation.
-
-* `Development bug/feature tracker`_: filing bugs and feature requests.
-
-* **IRC channel #pypy on freenode**: Many of the core developers are hanging 
out
-  at #pypy on irc.freenode.net.  You are welcome to join and ask questions
-  (if they are not already developed in the :doc:`FAQ <faq>`).
-  You can find logs of the channel here_.
-
-.. _development mailing list: http://python.org/mailman/listinfo/pypy-dev
-.. _Mercurial commit mailing list: 
http://python.org/mailman/listinfo/pypy-commit
-.. _development bug/feature tracker: https://bugs.pypy.org
-.. _here: http://tismerysoft.de/pypy/irc-logs/pypy
-
-
-Meeting PyPy developers
------------------------
-
-The PyPy developers are organizing sprints and presenting results at
-conferences all year round. They will be happy to meet in person with
-anyone interested in the project.  Watch out for sprint announcements
-on the `development mailing list`_.
diff --git a/pypy/doc/index.rst b/pypy/doc/index.rst
--- a/pypy/doc/index.rst
+++ b/pypy/doc/index.rst
@@ -2,28 +2,41 @@
 ================================
 
 Welcome to the documentation for PyPy, a fast_, compliant alternative
-implementation of the Python_ language. If you don't know what PyPy is,
-consult the `PyPy website`_.
+implementation of the Python_ language.
 
-PyPy is written using the RPython toolchain. RPython enables writing dynamic
-language interpreters in a subset of Python which can be translated to C code
-including an automatically generated JIT for the implemented language. If you
-want to learn more about RPython, see the `RPython website`_.
+* If you want to find out more about what PyPy is, have a look at our 
:doc:`introduction <introduction>`
+  or consult the `PyPy website`_.
+
+* If you're interested in trying PyPy out, check out the :doc:`installation 
instructions <install>`.
+
+* If you want to help develop PyPy, please have a look at :doc:`how to 
contribute <how-to-contribute>`
+  and get in touch (:ref:`contact`)!
+
+All of the documentation and source code is available under the MIT license,
+unless otherwise specified. Consult :source:`LICENSE`.
 
 .. _fast: http://speed.pypy.org
 .. _Python: http://python.org/
 .. _PyPy website: http://pypy.org/
-.. _RPython website: http://rpython.readthedocs.org/
 
 
-User documentation
-------------------
+Getting Started
+---------------
 
 .. toctree::
    :maxdepth: 1
 
+   introduction
    install
    build
+   faq
+
+Using PyPy
+----------
+
+.. toctree::
+   :maxdepth: 1
+
    cpython_differences
    gc_info
    jit-hooks
@@ -37,15 +50,28 @@
 -------------------------
 
 .. toctree::
-   :maxdepth: 2
+   :maxdepth: 1
+
+   how-to-contribute
+   project-ideas
+   project-documentation
+.. TODO: audit ^^
+
+
+.. TODO: Fill this in
 
 
 Academical stuff
 ----------------
 
 .. toctree::
-   :maxdepth: 2
+   :maxdepth: 1
 
+   extradoc
+.. TODO: Remove this? Or fill it with links to papers?
+
+
+.. _contact:
 
 Contact
 -------
@@ -83,4 +109,3 @@
 * :ref:`genindex`
 * :ref:`modindex`
 * :ref:`search`
-
diff --git a/pypy/doc/install.rst b/pypy/doc/install.rst
--- a/pypy/doc/install.rst
+++ b/pypy/doc/install.rst
@@ -1,2 +1,78 @@
 Downloading and Installing PyPy
 ===============================
+
+Download a pre-built PyPy
+~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The quickest way to start using PyPy is to download a prebuilt binary for your
+OS and architecture.  You can either use the `most recent release`_ or one of
+our `development nightly build`_.  Please note that the nightly builds are not
+guaranteed to be as stable as official releases, use them at your own risk.
+
+.. _most recent release: http://pypy.org/download.html
+.. _development nightly build: http://buildbot.pypy.org/nightly/trunk/
+
+
+Installing PyPy
+~~~~~~~~~~~~~~~
+
+PyPy is ready to be executed as soon as you unpack the tarball or the zip
+file, with no need to install it in any specific location::
+
+    $ tar xf pypy-2.1.tar.bz2
+    $ ./pypy-2.1/bin/pypy
+    Python 2.7.3 (480845e6b1dd, Jul 31 2013, 11:05:31)
+    [PyPy 2.1.0 with GCC 4.4.3] on linux2
+    Type "help", "copyright", "credits" or "license" for more information.
+    And now for something completely different: ``PyPy is an exciting 
technology
+    that lets you to write fast, portable, multi-platform interpreters with 
less
+    effort''
+    >>>>
+
+If you want to make PyPy available system-wide, you can put a symlink to the
+``pypy`` executable in ``/usr/local/bin``.  It is important to put a symlink
+and not move the binary there, else PyPy would not be able to find its
+library.
+
+If you want to install 3rd party libraries, the most convenient way is to
+install distribute_ and pip_:
+
+    $ curl -O http://python-distribute.org/distribute_setup.py
+
+    $ curl -O https://raw.github.com/pypa/pip/master/contrib/get-pip.py
+
+    $ ./pypy-2.1/bin/pypy distribute_setup.py
+
+    $ ./pypy-2.1/bin/pypy get-pip.py
+
+    $ ./pypy-2.1/bin/pip install pygments  # for example
+
+Third party libraries will be installed in ``pypy-2.1/site-packages``, and
+the scripts in ``pypy-2.1/bin``.
+
+
+Installing using virtualenv
+~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+It is often convenient to run pypy inside a virtualenv.  To do this
+you need a recent version of virtualenv -- 1.6.1 or greater.  You can
+then install PyPy both from a precompiled tarball or from a mercurial
+checkout::
+
+       # from a tarball
+       $ virtualenv -p /opt/pypy-c-jit-41718-3fb486695f20-linux/bin/pypy 
my-pypy-env
+
+       # from the mercurial checkout
+       $ virtualenv -p /path/to/pypy/pypy/translator/goal/pypy-c my-pypy-env
+
+Note that bin/python is now a symlink to bin/pypy.
+
+.. _distribute: http://www.python-distribute.org/
+.. _pip: http://pypi.python.org/pypi/pip
+
+
+Building PyPy yourself
+~~~~~~~~~~~~~~~~~~~~~~
+
+If you're interested in getting more involved, or doing something different 
with
+PyPy, consult `the build instructions <build>`.
diff --git a/pypy/doc/introduction.rst b/pypy/doc/introduction.rst
new file mode 100644
--- /dev/null
+++ b/pypy/doc/introduction.rst
@@ -0,0 +1,22 @@
+What is PyPy?
+=============
+
+In common parlance, PyPy has been used to mean two things.  The first is the
+:doc:`RPython translation toolchain <rpython:translation>`, which is a 
framework for generating
+dynamic programming language implementations.  And the second is one
+particular implementation that is so generated --
+an implementation of the Python_ programming language written in
+Python itself.  It is designed to be flexible and easy to experiment with.
+
+This double usage has proven to be confusing, and we are trying to move
+away from using the word PyPy to mean both things.  From now on we will
+try to use PyPy to only mean the Python implementation, and say the
+:doc:`RPython translation toolchain <rpython:translation>` when we mean the 
framework.  Some older
+documents, presentations, papers and videos will still have the old
+usage.  You are hereby warned.
+
+We target a large variety of platforms, small and large, by providing a
+compiler toolsuite that can produce custom Python versions.  Platform, memory
+and threading models, as well as the JIT compiler itself, are aspects of the
+translation process - as opposed to encoding low level details into the
+language implementation itself. :doc:`more... <architecture>`
diff --git a/pypy/doc/project-documentation.rst 
b/pypy/doc/project-documentation.rst
--- a/pypy/doc/project-documentation.rst
+++ b/pypy/doc/project-documentation.rst
@@ -79,11 +79,3 @@
    config/index
    commandline_ref
    dir-reference
-
-
-Indices and tables
-==================
-
-* :ref:`genindex`
-* :ref:`search`
-* :ref:`glossary`
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to