[Top][All Lists]

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

Re: Tree-IL Questions

From: Andy Wingo
Subject: Re: Tree-IL Questions
Date: Thu, 17 Nov 2011 22:59:12 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.3 (gnu/linux)

On Thu 17 Nov 2011 18:44, Noah Lavine <address@hidden> writes:

>>> - On a related note, why do most of the Tree-IL record type not appear
>>> in the define-type statement in tree-il.scm line 133, and is that
>>> connected with the borrow-core-vtables macro that I don't understand
>>> at all? :-)
>> Yes.
> Then I have a new goal: understand that. :-)

The deal is that macroexpansion produces tree-il.  The usual
macroexpander is provided by psyntax.  But before psyntax is loaded,
when the first bits of Scheme are seen, there is a boot expander written
in C that produces tree-il, with support for a subset of Scheme.  This
is in expand.[ch].

Obviously it can't load scheme in order to get the vtable for <seq>, for
example, so it defines some core subset of tree-il in C.

Then when tree-il loads, it grabs that core subset and re-exports it.

Does that help?

Thre is similar but more limited code in psyntax.scm, right at the top.



reply via email to

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