PyPy
  • What is PyPy?
  • Downloading and Installing PyPy
    • Download a pre-built PyPy
    • Installing PyPy
    • Installing using virtualenv
    • Building PyPy yourself
  • Building PyPy from Source
    • Clone the repository
    • Install build-time dependencies
    • Run the translation
    • Translating with non-standard options
    • Installation
  • Frequently Asked Questions
    • What is PyPy?
    • Is PyPy a drop in replacement for CPython?
    • Module xyz does not work with PyPy: ImportError
    • Do CPython Extension modules work with PyPy?
    • On which platforms does PyPy run?
    • Which Python version (2.x?) does PyPy implement?
    • Does PyPy have a GIL? Why?
    • Is PyPy more clever than CPython about Tail Calls?
    • How do I write extension modules for PyPy?
    • How fast is PyPy?
    • Couldn’t the JIT dump and reload already-compiled machine code?
    • Would type annotations help PyPy’s performance?
    • Can I use PyPy’s translation toolchain for other languages besides Python?
    • How do I get into PyPy development? Can I come to sprints?
    • OSError: ... cannot restore segment prot after reloc... Help?
  • Differences between PyPy and CPython
    • Extension modules
    • Differences related to garbage collection strategies
    • Subclasses of built-in types
    • Mutating classes of objects which are already used as dictionary keys
    • Ignored exceptions
    • Object Identity of Primitive Values, is and id
    • Miscellaneous
  • Writing extension modules for pypy
    • CFFI
    • CTypes
    • Reflex
  • RPython Mixed Modules
    • cppyy: C++ bindings for PyPy
  • Embedding PyPy
    • Simple example
    • Missing PyPy.h
    • More advanced example
    • Alternative example
    • Finding pypy_home
    • Threading
  • Garbage collector configuration
    • Minimark
  • JIT hooks
  • Application-level Stackless features
    • Introduction
    • Theory
    • Application level interface
  • The __pypy__ module
    • Generally available functionality
    • Transparent Proxy Functionality
    • Functionality available on py.py (not after translation)
  • What PyPy can do for your objects
    • Transparent Proxies
  • PyPy’s sandboxing features
    • Introduction
    • Overview
    • Howto
  • Software Transactional Memory
    • Introduction
    • Getting Started
    • Python 3
    • User Guide
    • Implementation
    • See also
  • Translating on Windows
    • Translating PyPy with Visual Studio
    • Preparing Windows for the large build
    • Installing external packages
    • Abridged method (for -Ojit builds using Visual Studio 2008)
    • Nonabrided method (building from scratch)
    • Using the mingw compiler
    • What is missing for a full 64-bit translation
  • Getting Started Developing With PyPy
    • Using Mercurial
    • Running PyPy’s unit tests
    • Special Introspection Features of the Untranslated Python Interpreter
    • Demos
    • Additional Tools for running (and hacking) PyPy
    • Getting involved
    • Where to start reading the sources
  • How to contribute to PyPy
    • Don’t just hack
    • Test driven development
    • Layers
  • You want to help with PyPy, now what?
    • Architecture
    • Toolset
  • Goals and Architecture Overview
    • Mission statement
    • High Level Goals
    • PyPy Python Interpreter
  • PyPy’s Configuration Handling
    • Main Assumption
    • API Details
    • The usage of config objects in PyPy
  • Potential project list
    • Simple tasks for newcomers
    • Mid-to-large tasks
    • Make more python modules pypy-friendly
  • Project Documentation
    • Goals and Architecture Overview
    • Coding Guide
    • Sprint reports from PyPy sprints 2003-2006
    • Papers, talks and related projects
    • PyPy video documentation
    • PyPy - Overview over the EU-reports
    • Distributed and agile development in PyPy
    • Glossary
  • Source Code Documentation
    • The Object Space
    • Bytecode Interpreter
    • Standard Interpreter Optimizations
    • PyPy Parser
    • Configuration Options for PyPy
    • Command line reference
    • PyPy directory cross-reference
  • Making a PyPy Release
    • Overview
    • Release Steps
  • Papers, talks and related projects
    • Papers
    • Talks and Presentations
    • Related projects
  • More sprints
    • EuroPython PyPy sprint 6-9 July 2006
    • PyPy at XP 2006 and Agile 2006
    • Duesseldorf PyPy sprint 2-9 June 2006
    • PyPy sprint at Akihabara (Tokyo, Japan)
    • PyPy at Python UK/ACCU Conference (United Kingdom)
    • PyPy at XPDay France 2006 in Paris March 23rd - March 24th 2006
    • Logic Sprint at Louvain-la-Neuve University (Louvain-la-Neuve, Belgium)
    • PyCon Sprint 2006 (Dallas, Texas, USA)
    • Talks at PyCon 2006 (Dallas, Texas, USA)
    • PyPy at Solutions Linux in Paris January 31st - February 2nd 2006
    • PyPy Sprint in Palma De Mallorca 23rd - 29th January 2006
    • Preliminary EU reports released
    • PyPy Sprint in Göteborg 7th - 11th December 2005
    • PyPy release 0.8.0
    • PyPy Sprint in Paris 10th-16th October 2005
    • PyPy release 0.7.0
    • PyPy Sprint in Heidelberg 22nd-29th August 2005
    • PyPy Hildesheim2 finished: first self-contained PyPy run!
    • EuroPython 2005 sprints finished
  • Old discussion notes needing categorization
    • Ordering finalizers in the SemiSpace GC
    • Designing thread pickling or “the Essence of Stackless Python”
    • Possible improvements of the rpython language
    • PyPy’s ctypes implementation
    • A JIT-aware profiler
  • Historical release notes
    • CPython 2.7 compatible versions
    • CPython 3.2 compatible versions
  • Changelogs
    • CPython 2.7 compatible versions
    • CPython 3.2 compatible versions
  • Contributors to PyPy
 
PyPy
  • Docs »
  • Old discussion notes needing categorization
  • Edit on Bitbucket

Old discussion notes needing categorization¶

The following are old discussion notes which may or may not reflect the current reality.

Help from domain experts would be welcome, since some of these documents probably ought to be moved to a more prominent location, some should be deleted, and some left here.

  • Ordering finalizers in the SemiSpace GC
    • Goal
    • Algorithm
  • Designing thread pickling or “the Essence of Stackless Python”
    • What is meant by pickling?
    • What is not meant by pickling?
    • Basic necessities
    • The real problem
    • Why a problem?
    • SLP switching strategies
    • Analogies between SLP and PyPy
    • Ways to handle the problem in a minimalistic way
    • Just an addition after some more thinking
  • Possible improvements of the rpython language
    • Improve the interpreter API
    • RPython language
    • Extensible type system for llexternal
  • PyPy’s ctypes implementation
    • Summary
    • Low-level part: _rawffi
    • High-level parts
    • Discussion and limitations
    • Running application examples
      • pyglet
    • ctypes configure
      • idea
      • installation
      • usage
  • A JIT-aware profiler
    • Expected output
    • What to do about “inner” bridges?
    • Detecting the enter to/exit from a loop
Next Previous

© Copyright 2015, The PyPy Project.

Built with Sphinx using a theme provided by Read the Docs.
Read the Docs v: release-2.5.x
Versions
latest
release-2.5.x
release-2.4.x
Downloads
htmlzip
epub
On Read the Docs
Project Home
Builds

Free document hosting provided by Read the Docs.