On Sat, Mar 16, 2013 at 3:29 PM, Anton Vodonosov <avodonosov@yandex.ru> wrote:
As ECL can compiles List to C, a C compiler generating LLVM code may be used
(llvm-gcc or clang).

What Christian is doing is more what I thought should be done: automatically generating LLVM bytecode and loading it with LLVM, so that it is natively compiled. Using clang is not really winning anything: one may just as well use any other C ocmpiler
Juan Jose, Christian, how can you compare Lisp -> C -> LLVM with Lisp -> LLVM
solution to ECL?
My understantind (pure theoretical, I haven't tried any of that):
if ECL can generate LLVM directly, it is a simplification to user, less tools to chain.
But Lisp to LLVM required efforts to implement and will also take mainenance efforts.
Christian, have you compared these options, or you were just guided by interest
to learn/try your own Lisp -> LLVM implementation?

ECL's current compiler generates C, but this is done on a second pass that may be abstracted out to use a different backend. This is what I was trying with the new compiler, but I found I do not have enough time for doing the compiler as well as the backend -- at least not in the near future. However, if Christian's tools for the generation of LLVM code are readable enough, I believe they could be used with ECL as well, coexisting with the C backend.


Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)