[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Why 3 different evaluators?
From: |
Andy Wingo |
Subject: |
Re: Why 3 different evaluators? |
Date: |
Wed, 16 Nov 2011 10:31:31 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.3 (gnu/linux) |
On Wed 16 Nov 2011 06:00, address@hidden writes:
> According to the doc, guile currently maintain 3 evaluators:
>
> - the new VM
> - an evaluator written in scheme
> - the old C evaluator, used for bootstrapping the compiler.
>
> That's a lot of code just to bootstrap the compiler. Why not bootstrapping
> the
> compiler from either previous installed guile or (as fall-back) some provided
> .go bytecode instead? Wouldn't that make guile code significantly simpler to
> maintain and faster to compile?
No :)
If I bootstrap Guile-X from Guile-Y, I have to make sure that Guile-X's
code can load in Guile-Y -- not trivial -- and I have to trust the
output of Guile-Y.
If I bootstrap Guile-X from GCC, I have to trust GCC.
I trust GCC more than Guile-Y.
You can use GUILE_FOR_BUILD if you want to speed things up.
Andy
--
http://wingolog.org/