[pypy-svn] r60677 - pypy/extradoc/talk/ecoop2009

davide at codespeak.net davide at codespeak.net
Sun Dec 21 11:45:59 CET 2008


Author: davide
Date: Sun Dec 21 11:45:58 2008
New Revision: 60677

Modified:
   pypy/extradoc/talk/ecoop2009/intro.tex
   pypy/extradoc/talk/ecoop2009/main.tex
Log:
first submission

Modified: pypy/extradoc/talk/ecoop2009/intro.tex
==============================================================================
--- pypy/extradoc/talk/ecoop2009/intro.tex	(original)
+++ pypy/extradoc/talk/ecoop2009/intro.tex	Sun Dec 21 11:45:58 2008
@@ -1,7 +1,4 @@
 \section{Introduction}
-
-Dynamic languages are increasingly popular etc. etc.
-
 The easiest way to implement a dynamic language such as Python is to write an
 interpreter; however, interpreters are slow.
 
@@ -16,16 +13,16 @@
 enormous effort.
 
 PyPy's approach \cite{RiBo07_223} is to automatize the generation of JIT compilers in order
-to reduce to a minimum the effort required to get a fast implementation of a
-dynamic language; all you have to do is to write a high level specification of
-the language (by writing an interpreter), and putting it through PyPy's
-translation toolchain. The automatic generation of JIT compilers is done with
-the help of partial evaluation techniques.
-
-Instead of emitting code for a real CPU, the generated JIT compilers described
-in this paper emit code for a virtual machine: before being executed, the
-emitted code will be compiled again by .NET's own JIT compiler, thus having
-two \emph{layers} of JIT compilation.
+to minimize the effort required to get a fast implementation of a
+dynamic language; automatic generation of JIT compilers is done with
+the help of partial evaluation techniques and requires the user only
+to provide an interpreter with some manual annotations which hint
+the generator how interpretation and JIT compilation has to be interleaved. 
+
+More precisely, in this paper we focus on the ability of generating a JIT compiler able to emit code
+for the .NET virtual machine. To our knowledge, this is the first experiment with an interpreter with
+two \emph{layers} of JIT compilation, since, before being executed, the
+emitted code is eventually compiled again by .NET's own JIT compiler.
 
 The contributions of this paper are twofold: (1) \emph{promotion} is a
 generalization of polymorphic inline caches that make partial evaluation

Modified: pypy/extradoc/talk/ecoop2009/main.tex
==============================================================================
--- pypy/extradoc/talk/ecoop2009/main.tex	(original)
+++ pypy/extradoc/talk/ecoop2009/main.tex	Sun Dec 21 11:45:58 2008
@@ -5,7 +5,7 @@
 %\textwidth=130mm   % LNCS: 122mm
 %\textheight=203mm  % LNCS: 193mm
 
-%\renewcommand{\baselinestretch}{0.95}
+\renewcommand{\baselinestretch}{0.97}
 
 \usepackage{amssymb}
 \usepackage{amsmath}
@@ -37,7 +37,7 @@
 
 %\renewcommand{\baselinestretch}{.98}
 \newboolean{showcomments}
-\setboolean{showcomments}{true}
+\setboolean{showcomments}{false}
 \ifthenelse{\boolean{showcomments}}
   {\newcommand{\nb}[2]{
     \fbox{\bfseries\sffamily\scriptsize#1}



More information about the Pypy-commit mailing list