[bitc-dev] BitC / HLVM
Guillaume FORTAINE
guillaume.fortaine at wanadoo.fr
Sat Aug 5 12:57:19 EDT 2006
Hello all,
Could this tool be an interesitng one to develop bitc ?
http://hlvm.org
High Level Virtual Machine
"Based on LLVM (Low Level Virtual Machine). LLVM is HLVM's sister
project. HLVM gains tremendous capability from LLVM in the areas of code
generation, optimization, bytecode facilties, JIT compilation, target
machine support, etc.
Dynamic Compilation. HLVM supports "dynamic" languages, i.e. those that
that have run-time compilation or interpretation as a language feature.
For example, languages that support an eval function that compiles or
interprets a source language statement (or entire program) at run-time.
Language Designer's Toolkit. HLVM provides a complete language
designer's toolkit for creating new programming languages. A plug-in
model is used to allow a language front end to be executed at run-time.
A language plug-in handles the process of translating from the
language's source code into the HLVM Abstract Syntax Tree (AST)
representation. After that, HLVM handles all aspects of code generation,
bytecode storage, JIT execution or interpretation, and native compilation.
Common Runtime. HLVM supports a common runtime for a variety of
programming languages including Ruby, Python, Perl, Jython, Haskell,
Prolog, and others.
Language Interoperability Framework. Because HLVM uses the same
facilities to implement the execution of different source languages, it
is also a language interoperability framework. All language plug-ins
translate source code into the same AST. This means they can
interoperate. It doesn't mean they will interoperate. Language plug-ins
that make use of the HLVM runtime library for common constructs (e.g.
"string") will enhance the language's ability to interoperate with other
languages.
"
Best Regards,
Guillaume fortaine
More information about the bitc-dev
mailing list