=================================================
PyPy - talks and related projects 
=================================================

Talks and Presentations 
----------------------------------

Talks in 2006
+++++++++++++

* `PyPy's VM Approach`_ talk, given by Armin Rigo at the Dynamic Languages
  Symposium at OOPSLA'06 (Portland OR), and by Samuele Pedroni at Intel
  Hillsboro (OR)  (October). The talk presents the paper 
  `PyPy's approach to virtual machine construction`_ accepted for 
  the symposium.

* `PyPy Status`_ talk, given by Samuele Pedroni at the Vancouner
  Python Workshop 2006 (August). 

* `Trouble in Paradise`_: the Open Source Project PyPy, 
  EU-funding and Agile Practices talk, by Bea During at
  Agile 2006 (experience report).

*  `Sprint Driven Development`_, Agile Methodologies in a
   Distributed Open Source Project (PyPy) talk, by Bea During
   at XP 2006 (experience report).
      
* `Kill -1`_: process refactoring in the PyPy project talk, by Bea During
  at the Agile track/Europython 2006.

* `What can PyPy do for you`_, by Armin Rigo and Carl Friedrich Bolz given at
  EuroPython 2006. The talk describes practical usecases of PyPy.

* `PyPy 3000`_, a purely implementation-centered lightning talk at EuroPython
  2006, given by Armin Rigo and Holger Krekel.

* `PyPy introduction at EuroPython 2006`_, given by Michael Hudson, also
  stating the status of the project.

* Very similar to the EuroPython intro talk (but somewhat older) is the
  `PyPy intro`_ talk, given by Michael Hudson at ACCU 2006 (April) 

* `PyPy development method`_ talk, given by Bea During and
  Holger Krekel at Pycon2006 

Talks in 2005
+++++++++++++


* `PyPy - the new Python implementation on the block`_, 
  given by Carl Friedrich Bolz and Holger Krekel at the 
  22nd Chaos Communication Conference in Berlin, Dec. 2005. 
  
* `Open Source, EU-Funding and Agile Methods`_, given by Holger Krekel
  and Bea During at the 22nd Chaos Communication Conference in Berlin, Dec. 2005

* `Sprinting the PyPy way`_, an overview about our sprint methodology, given by
  Bea During during EuroPython 2005

* `PyCon 2005`_ animated slices, mostly reporting on the translator status.

* `py lib slides`_ from the py lib talk at PyCon 2005 
  (py is used as a support/testing library for PyPy). 

Talks in 2004
+++++++++++++

* `EU funding for FOSS`_ talk on Chaos Communication
  Conference in Berlin, Dec 2004. 

Talks in 2004
+++++++++++++

* oscon2003-paper_ an early paper presented at Oscon 2003 describing 
  what the PyPy project is about and why you should care. 

* `Architecture introduction slides`_ a mostly up-to-date
  introduction for the Amsterdam PyPy-Sprint Dec 2003. 

.. _`PyPy 3000`: http://codespeak.net/pypy/extradoc/talk/ep2006/pypy3000.txt
.. _`What can PyPy do for you`: http://codespeak.net/pypy/extradoc/talk/ep2006/usecases-slides.html
.. _`PyPy introduction at EuroPython 2006`: http://codespeak.net/pypy/extradoc/talk/ep2006/intro.pdf
.. _`PyPy - the new Python implementation on the block`: http://codespeak.net/pypy/extradoc/talk/22c3/hpk-tech.html
.. _`PyPy development method`: http://codespeak.net/pypy/extradoc/talk/pycon2006/method_talk.html
.. _`PyPy intro`: http://codespeak.net/pypy/extradoc/talk/accu2006/accu-2006.pdf 
.. _oscon2003-paper: http://codespeak.net/pypy/extradoc/talk/oscon2003-paper.html
.. _`Architecture introduction slides`: http://codespeak.net/pypy/extradoc/talk/amsterdam-sprint-intro.pdf
.. _`EU funding for FOSS`: http://codespeak.net/pypy/extradoc/talk/2004-21C3-pypy-EU-hpk.pdf
.. _`py lib slides`: http://codespeak.net/pypy/extradoc/talk/2005-pycon-py.pdf
.. _`PyCon 2005`: http://codespeak.net/pypy/extradoc/talk/pypy-talk-pycon2005/README.html
.. _`Trouble in Paradise`: http://codespeak.net/pypy/extradoc/talk/agile2006/during-oss-sprints_talk.pdf
.. _`Sprint Driven Development`: http://codespeak.net/pypy/extradoc/talk/during-xp2006-sprints.pdf
.. _`Kill -1`: http://codespeak.net/pypy/extradoc/talk/ep2006/kill_1_agiletalk.pdf
.. _`Open Source, EU-Funding and Agile Methods`: http://codespeak.net/pypy/extradoc/talk/22c3/agility.pdf
.. _`PyPy Status`: http://codespeak.net/pypy/extradoc/talk/vancouver/talk.html
.. _`Sprinting the PyPy way`: http://codespeak.net/svn/pypy/extradoc/talk/ep2005/pypy_sprinttalk_ep2005bd.pdf
.. _`PyPy's VM Approach`: http://codespeak.net/pypy/extradoc/talk/dls2006/talk.html
.. _`PyPy's approach to virtual machine construction`: http://codespeak.net/svn/pypy/extradoc/talk/dls2006/pypy-vm-construction.pdf


Related projects 
----------------------------------

* Dynamo_ showcased `transparent dynamic optimization`_
  generating an optimized version of a binary program at runtime. 

* Tailoring Dynamo_ to interpreter implementations and challenges -
  Gregory Sullivan et. al., 
  `Dynamic Native Optimization of Native Interpreters`_. IVME 03. 2003.

* Stackless_ is a recursion-free version of Python.

* Psyco_ is a just-in-time specializer for Python.

* JikesRVM_ a research dynamic optimizing Java VM written in Java.

* `Squeak`_ is a Smalltalk-80 implementation written in
  Smalltalk, being used in `Croquet`_, an experimental 
  distributed multi-user/multi-programmer virtual world. 

* `LLVM`_ the low level virtual machine project. 

* `CLR under the hood`_ (powerpoint, works with open office) gives 
  a good introduction to the underlying models of Microsoft's Common 
  Language Runtime, the Intermediate Language, JIT and GC issues. 
  
* spyweb translates Python programs to Scheme. (site unavailable)

* Jython_ is a Python implementation in Java.

* IronPython_ a new Python implementation compiling Python into 
  Microsofts Common Language Runtime (CLR) Intermediate Language (IL).

* `GNU lightning`_ generates assembly language at runtime. 

* Tunes_ is not entirely unrelated.  The web site changed a lot, but a
  snapshot of the `old Tunes Wiki`_ is available on codespeak; browsing
  through it is a lot of fun.

.. _`CLR under the hood`: http://download.microsoft.com/download/2/4/d/24dfac0e-fec7-4252-91b9-fb2310603f14/CLRUnderTheHood.BradA.ppt
.. _Stackless: http://stackless.com 
.. _Psyco: http://psyco.sourceforge.net
.. _Jython: http://www.jython.org
.. _`Squeak`: http://www.squeak.org/
.. _`Croquet`: http://www.opencroquet.org/
.. _`transparent dynamic optimization`: http://www.hpl.hp.com/techreports/1999/HPL-1999-77.pdf
.. _Dynamo: http://www.hpl.hp.com/techreports/1999/HPL-1999-78.pdf
.. _testdesign: coding-guide.html#test-design
.. _feasible: http://codespeak.net/pipermail/pypy-dev/2004q2/001289.html
.. _rock: http://codespeak.net/pipermail/pypy-dev/2004q1/001255.html
.. _`GNU lightning`: http://www.gnu.org/software/lightning/lightning.html
.. _LLVM: http://llvm.org/
.. _IronPython: http://www.codeplex.com/Wiki/View.aspx?ProjectName=IronPython
.. _`Dynamic Native Optimization of Native Interpreters`: http://www.ai.mit.edu/~gregs/dynamorio.html
.. _JikesRVM: http://jikesrvm.sf.net
.. _Tunes: http://tunes.org
.. _`old Tunes Wiki`: http://codespeak.net/cliki.tunes.org/
