From: Sjoerd van Leent <svanleent@gmail.com>
To: Nala Ginrut <nalaginrut@gmail.com>
Cc: Andy Wingo <wingo@pobox.com>, guile-devel <guile-devel@gnu.org>
Subject: Re: on native compilation
Date: Sun, 8 Sep 2013 20:19:22 +0200 [thread overview]
Message-ID: <CACqzbVga-dY4v447OsPsR0hiZB+t+ZqeezGjSwyNwio97uSEHA@mail.gmail.com> (raw)
In-Reply-To: <1378098441.18368.21.camel@Renee-desktop.suse>
[-- Attachment #1: Type: text/plain, Size: 2017 bytes --]
Reading the written thoughts below, what was the actual reason no to use
GNU Lightning? Has that too many complexities or incompatibilities to be
used for Scheme and other functional languages opposed to it's native GNU
Smalltalk?
I ask this since recently GNU Lightning 2.0 has seen the light, and I just
wonder if it would be wise to reinvestigate.
Any thoughts?
2013/9/2 Nala Ginrut <nalaginrut@gmail.com>
> On Sun, 2013-09-01 at 13:12 +0200, Andy Wingo wrote:
> > Hi,
> >
> > We have a bit too much on our plates ATM to think about native
> > compilation. However, "what's the plan" is a common question. So here
> > is a tentative plan. Sometime after 2.2 settles down would be the time
> > to look at it. It would probably be Guile 3.0. Dunno.
> > The way to do it is to refactor compile-rtl.scm / assembler.scm /
> > disassembler.scm to emit and disassemble native code instead. We get to
> > keep lots of parts of the existing compiler though: the ELF linker, the
> > constant allocator, all the metadata-related things (both on the
> > compiler and runtime side). In this way it's a less brusque change than
> > the one from the stack VM to the RTL VM. A first crack at the problem
> > would not do register allocation and would just emit code for each VM
> > op. Later we could do proper register allocation.
> >
>
> Alright, so that means we'll do all the arg-passing work with stack at
> very beginning. I think it's a fair choice for such complex compiler
> stuffs.
>
> > It's probably easiest to have a native-only system rather than a mixed
> > native+VM system, as that way you would just have one stack. We'd keep
> > the VM around of course -- it's just that a given build of Guile would
> > either be VM-based or native, chosen at build-time. There's lots of
> > stack-related questions to sort out.
> >
>
> I'm glad to see AOT would be optional for users, since many users need
> portable objcode.
>
> > Anyway, that's a pseudoplan.
>
> Thanks for the working! ;-)
>
> >
> > Andy
>
[-- Attachment #2: Type: text/html, Size: 2730 bytes --]
next prev parent reply other threads:[~2013-09-08 18:19 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-01 11:12 on native compilation Andy Wingo
2013-09-02 5:07 ` Nala Ginrut
2013-09-08 18:19 ` Sjoerd van Leent [this message]
2013-09-17 17:07 ` Andy Wingo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/guile/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CACqzbVga-dY4v447OsPsR0hiZB+t+ZqeezGjSwyNwio97uSEHA@mail.gmail.com \
--to=svanleent@gmail.com \
--cc=guile-devel@gnu.org \
--cc=nalaginrut@gmail.com \
--cc=wingo@pobox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).