I can't make any promises -- initially, I was interested in it as an intellectual exercise; but Marc beat me to it by having students implement it already (maybe this is why being a Professor is useful).<br><br>But if you don't mind posting the code, it'd be great -- the next time I'm procrastinating, instead of watching the latest TV shows on <a href="http://hulu.com">hulu.com</a>, maybe I can fire up gambit on llvm.<br>
<br>Thanks!<br><br><div class="gmail_quote">On Sun, Feb 15, 2009 at 2:23 PM, Arnaud Bergeron <span dir="ltr"><<a href="mailto:abergeron@gmail.com">abergeron@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
2009/2/15 Arnaud Bergeron <<a href="mailto:abergeron@gmail.com">abergeron@gmail.com</a>>:<br>
<div class="Ih2E3d">> 2009/2/15 Marc Feeley <<a href="mailto:feeley@iro.umontreal.ca">feeley@iro.umontreal.ca</a>>:<br>
>><br>
>> On 15-Feb-09, at 12:47 AM, lowly coder wrote:<br>
>><br>
>>> this is kinda off topic, -- but people here seem really smart, so I'll<br>
>>> risk the occasional flames for good criticism + insight<br>
>>><br>
>>> i think the llvm/jvm projects are really cool, since so much work is put<br>
>>> into jitting; and for one reason or another, I like llvm more than jvm<br>
>>><br>
>>> i'm curious about the possiblity of a high performance scheme (and perhaps<br>
>>> gambit in particular) running on llvm; where the 'initial implementation'<br>
>>> may not be all that fast ... but letting llvm jit it away<br>
>>><br>
>>> how does this sound? feasible for a scheme (but not gambit)? down the<br>
>>> pipes planned for gambit? or totally stupid/crazy?<br>
>>><br>
>>> the 'main' advantage of this approach is that I _assume_ that the llvm<br>
>>> guys are pretty good at hacking up interpreters / jit's ... so why not<br>
>>> benefit from their constant progress :-D<br>
>><br>
>> I had a group of students implement a LLVM backend for Gambit in one of the<br>
>> courses I teach (compilers).  I'm CCing them.  Perhaps they can give you<br>
>> more information and add their code to the dumping grounds.  I also had a<br>
>> student write a Scheme to CLR compiler which can bootstrap itself.<br>
>><br>
>> Marc<br>
><br>
> We did a partial back-end for Gambit using LLVM and were just a little<br>
> bit faster for the benchmarks I tried.  Although, in all cases the<br>
> speed difference could well be credited to some part not being<br>
> implemented properly and thus requiring less work.<br>
<br>
</div>I forgot to mention, but what we did was using LLVM 2.3.  2.5 is about<br>
to be released now and has a lot of improvements over 2.3.<br>
<div><div></div><div class="Wj3C7c"><br>
> I have some plans to take the implementation in another direction, to<br>
> ease the expression of the various gambit back-end statements.  I have<br>
> not done any work on this yet.  As for the code we did, it is<br>
> incomplete, but I have no objection to it being posted on the dumping<br>
> grounds, but I have no place to host it.  I can send you the code if<br>
> you are interested.<br>
><br>
> Also, the back-end we did was only for static compiling.  Although<br>
> once I get back in it and maybe get it to work solidly, it could be<br>
> used for gsi too.  Don't hold your breath for now though.<br>
><br>
> Arnaud<br>
><br>
</div></div></blockquote></div><br>