[pypy-svn] r61109 - pypy/extradoc/talk/ecoop2009/tutorial

cfbolz at codespeak.net cfbolz at codespeak.net
Mon Jan 19 12:51:13 CET 2009

Author: cfbolz
Date: Mon Jan 19 12:51:12 2009
New Revision: 61109

   pypy/extradoc/talk/ecoop2009/tutorial/llncs.cls   (props changed)
      - copied unchanged from r60991, pypy/extradoc/talk/ecoop2009/llncs.cls
(cfbolz, arigo, antocuni): start tutorial propsal

Added: pypy/extradoc/talk/ecoop2009/tutorial/proposal.tex
--- (empty file)
+++ pypy/extradoc/talk/ecoop2009/tutorial/proposal.tex	Mon Jan 19 12:51:12 2009
@@ -0,0 +1,105 @@
+ %%%% Compression Light+: LNCS margin reduced by +/-7mm along all edges (RG).
+%\textwidth=130mm   % LNCS: 122mm
+%\textheight=203mm  % LNCS: 193mm
+        basicstyle=\scriptsize\ttfamily,
+        keywordstyle=\color{blue}, % I couldn't find a way to make chars both bold and tt
+        frame=none,
+        stringstyle=\color{blue},
+        fancyvrb=true,
+        xleftmargin=20pt,xrightmargin=20pt,
+        showstringspaces=false}
+  {\newcommand{\nb}[2]{
+    \fbox{\bfseries\sffamily\scriptsize#1}
+    {\sf\small$\blacktriangleright$\textit{#2}$\blacktriangleleft$}
+   }
+   \newcommand{\version}{\emph{\scriptsize$-$Id: main.tex 19055 2008-06-05 11:20:31Z cfbolz $-$}}
+  }
+  {\newcommand{\nb}[2]{}
+   \newcommand{\version}{}
+  }
+\title{Tutorial Proposal: Writing Interpreters for Dynamic Languages Using PyPy
+(and Getting Them Fast)}
+\author{Carl Friedrich Bolz\inst{2} \email{cfbolz at gmx.de} \and Antonio Cuni\inst{1} \email{anto.cuni at gmail.com} \and Armin Rigo\inst{2} \email{arigo at tunes.org}}
+\institute{DISI, University of Genova, Italy 
+Softwaretechnik und Programmiersprachen
+ Heinrich-Heine-Universit\"at D\"usseldorf}
+The easiest way to implement a dynamic language such as JavaScript or Python is
+to write an interpreter for it; however, interpreters are slow. An alternative
+is to write a compiler; writing a compiler that targets a high level virtual
+machine like CLI or JVM is easier than targeting a real CPU, but it still
+require a lot of work, as IronPython, Jython, JRuby demonstrate. Moreover,
+the various platforms have to be targeted independently.
+The PyPy project \cite{RiBo07_223} aims to make the implementation of dynamic
+languages easier by providing a toolchain that allows to translate an
+interpreter to various target platforms, including the JVM, .NET and C/Posix. 
+In addition, we are working on being able to automatically transform the
+interpreter into a specializing JIT-compiler to vastly increase performance.
+The goal is to minimize the effort required to get a fast implementation of a
+dynamic language.
+Outline of the tutorial:
+ - introduction to PyPy
+ - present the small language and its interpreter
+ - show how to compile the interpreter to various platforms
+ - show how to apply JIT-generator

More information about the Pypy-commit mailing list