guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Guile virtual machine targets


From: Noah Lavine
Subject: Re: Guile virtual machine targets
Date: Mon, 18 Apr 2011 13:16:15 -0400

Hello,

Let me clarify a bit about Lightning and the stuff I've been doing:

Lightning is a very low-level assembler framework. It is embeddable,
and Guile could certainly target it, but targeting Lightning would be
just a speed enhancement - it wouldn't make us more compatible with
anything else.

Actually I had decided a while ago that we should look at using GNU
Libjit rather than Lightning, mostly because it does register
allocation for us, whereas Lightning doesn't. It also provides tail
call support, which Lightning does not (I think).

Libjit is about the same level of abstraction as LLVM, but with much
less optimization ability. We talked about LLVM a bit, but Andy
thought that we should avoid it because it is BSD-licensed rather than
LGPL (if my memory is correct). However, I don't think optimization is
our primary concern right now, because before we start optimizing any
sort of low-level representation we would want better optimization for
Tree-IL or a similar higher-level representation of Guile code.

Noah

On Mon, Apr 18, 2011 at 11:43 AM, Ewan Higgs <address@hidden> wrote:
> Hi all,
> With Noah's suggestion of moving the Guile vm in a direction to support CLisp
> work as well, I became curious about the status of the various Guile back ends
> (Lightning and Guile-vm). These questions are largely out of personal interest
> and not leading up to any particular piece of work I had in mind.
>
> Is Lightning actually supported? I saw that there is some mention of it on the
> old CVS page[1], but almost nothing else. I also see that Noah was working on
> something last year but it doesn't appear to have gotten into the master repo
> [1]. Is Lightning embeddable? If so, then I guess that work could replace the
> existing libguile virtual machine.
>
> CLisp is currently using Lightning as of 2.45 (2008/02/24)[2]. So if Guile and
> CLisp are using this then would Noah's interests be satisfied? If Lightning
> doesn't provide enough features to support work that Guile's vm does, would it
> make sense to port the work for the Guile-vm to Lightning instead and simply
> support that back end?
>
> If Lightning isn't embeddable, is LLVM? If so, wouldn't that become an
> attractive target for Guile as it's well documented and has a lot of inertia?
>
> Thanks!
>
> -Ewan
>
> [1] As mentioned here: http://www.gnu.org/s/guile/anon-cvs.html -- though CSV 
> is
> no longer used.
> Noah has some work here): https://github.com/noahl/guile-lightning
> [2] http://www.clisp.org/impnotes.html
>
> NB: This was intentionally not cross posted to Clisp developers list.
>
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]