Title
Representation-based just-in-time specialization and the psyco prototype for python
Abstract
A powerful application of specialization is to remove interpretative overhead: a language can be implemented with an interpreter, whose performance is then improved by specializing it for a given program source. This approach is only moderately successful with very high level languages, where the operation of each single step can be highly dependent on run-time data and context. In the present paper, the Psyco prototype for the Python language is presented. It introduces two novel techniques. The first is just-in-time specialization, or specialization by need, which introduces the "unlifting" ability for a value to be promoted from run-time to compile-time during specialization -- the inverse of the lift operator of partial evaluation. Its presence gives an unusual and powerful perspective on the specialization process. The second technique is representations, a theory of data-oriented specialization generalizing the traditional specialization domains (i.e. the compile-time/run-time dichotomy).
Year
DOI
Venue
2004
10.1145/1014007.1014010
PEPM
Keywords
Field
DocType
high level language,python language,run-time dichotomy,run-time data,traditional specialization domain,psyco prototype,data-oriented specialization,powerful perspective,powerful application,representation-based just-in-time specialization,just-in-time specialization,specialization process,python,representation,partial evaluation
Inverse,Programming language,Computer science,Partial evaluation,Generalization,Theoretical computer science,Interpreter,Operator (computer programming),Python (programming language)
Conference
ISBN
Citations 
PageRank 
1-58113-835-0
36
3.70
References 
Authors
10
1
Name
Order
Citations
PageRank
Armin Rigo130118.27