[Python-Dev] Optimization targets
Mike Pall
mikepy-0404 at mike.de
Thu Apr 15 11:52:30 EDT 2004
Hi,
Jeremy Hylton wrote:
> Another question that I'd love to hear the answer to: What's the
> difference between Pysco and something like this Self implementation or
> the HotSpot Java implementation? I've never read a clear explanation of
> what Pysco does or how it compares to other systems that do dynamic
> compilation.
Here is a link for Java HotSpot:
http://java.sun.com/products/hotspot/docs/whitepaper/Java_Hotspot_v1.4.1/Java_HSpot_WP_v1.4.1_1002_4.html
It seems that many advantages gained by static typing are lost since the
Java codebase encourages strong polymorphism (in contrast to C++).
What can we learn from this for Python: static typing is probably not
all that helpful for a JIT compiler (in contrast to popular belief).
About the CLR (.NET and C# target) JIT:
http://www.artima.com/intv/choices.html
What I found most interesting: their bytecode is polymorphic because they
never targetted an interpreter and the JIT must do type inference anyway.
Well, Python bytecode doesn't look that bad now ...
I would be very interested to hear what Armin thinks about static vs.
dynamic type inferencing and about semi-static (CLR) vs. hotspot (Java)
compilation.
Bye,
Mike
More information about the Python-Dev
mailing list