On Wednesday 12 December 2007 13:39, Gordon Henriksen wrote:> Since that ASTs are by definition language-specific, such should > probably be a separate project because LLVM itself is language-agnostic.Well, I'd like this to factor out commonality from the implementations of all managed languages (everything from C++ to Lisp) so I think it should express a typed language with typical control-flow constructs (including exceptions), only first-order functions and parametric polymorphism/generics. The generics should be handled by JIT compiling type-specialized functions on demand. This representation should also be cross-platform. This could be a language in itself, of course, just as MSIL is but I think you'd want to add pattern match compilation, higher-order functions, an object system and so forth on top of this to make it useful. -- Dr Jon D Harrop, Flying Frog Consultancy Ltd. http://www.ffconsultancy.com/products/?e
On Dec 12, 2007, at 08:59, Jon Harrop wrote:> Well, I'd like this to factor out commonality from the > implementations of all managed languages (everything from C++ to > Lisp) so I think it should express a typed language with typical > control-flow constructs (including exceptions), only first-order > functions and parametric polymorphism/generics. The generics should > be handled by JIT compiling type-specialized functions on demand. > This representation should also be cross-platform. > > This could be a language in itself, of course, just as MSIL is but I > think you'd want to add pattern match compilation, higher-order > functions, an object system and so forth on top of this to make it > useful.Hi Jon, In this direction, PyPy and Reid's HLVM projects may be of interest to you. — Gordon
On Wednesday 12 December 2007 23:30, Gordon Henriksen wrote:> Hi Jon, > > In this direction, PyPy and Reid's HLVM projects may be of interest to > you.Yes. I've had a look at both of those but they only seem to cater for dynamically-typed languages. -- Dr Jon D Harrop, Flying Frog Consultancy Ltd. http://www.ffconsultancy.com/products/?e