unladen swallow: python and llvm
nick at craig-wood.com
Sun Jun 7 20:29:39 CEST 2009
Neuruss <luismgz at gmail.com> wrote:
> ok, let me see if I got it:
> The Python vm is written in c, and generates its own bitecodes which
> in turn get translated to machine code (one at a time).
> Unladen Swallow aims to replace this vm by one compiled with the llvm
> compiler, which I guess will generate different bytecodes, and in
> addition, supplies a jit for free. Is that correct?
Pretty good I think!
> It's confussing to think about a compiler which is also a virtual
> machine, which also has a jit...
Well the compiler is actually gcc with a llvm opcodes backend.
> Another thing that I don't understand is about the "upfront"
> Actually, the project plan doesn't mention it, but I read a comment on
> pypy's blog about a pycon presentation, where they said it would be
> upfront compilation (?). What does it mean?
I don't know, I'm afraid.
> I guess it has nothing to do with the v8 strategy, because unladen
> swallow will be a virtual machine, while v8 compiles everything to
> machine code on the first run. But I still wonder what this mean and
> how this is different.
Nick Craig-Wood <nick at craig-wood.com> -- http://www.craig-wood.com/nick
More information about the Python-list