[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: patch: executable modules support with "guile -e ENTRYPOINT"
From: |
Marius Vollmer |
Subject: |
Re: patch: executable modules support with "guile -e ENTRYPOINT" |
Date: |
Mon, 06 Oct 2003 00:18:26 +0200 |
User-agent: |
Gnus/5.1002 (Gnus v5.10.2) Emacs/21.3 (gnu/linux) |
Neil Jerram <address@hidden> writes:
>>>>>> "Marius" == Marius Vollmer <address@hidden> writes:
>
> Marius> (:: (my module) start)
>
> Marius> or maybe
>
> Marius> (:: my module start)
>
> Marius> So what do people say?
>
> Just to check I understand - this is just syntax, right?
Yes.
> Specifically, it's just a more convenient form for
>
> (module-ref (resolve-module '(my module)) 'start)
Not necessarily. This expansion would be a possible implementation
right now, but in the end, it is probably better to make a new
'primitive' syntax for identifiers. Consider a syntax-case definition
of '::'. It would have to expand into something like
((:: (guile) module-ref) ((:: (guile) resolve-module) '(my module)) 'start)
since it needs to fix the references to 'module-ref' and
'resolve-module'. So '::' or something equivalent is needed for the
output of the macro expander itself. In the new-model.text, I have
used keywords for things like this. '(:: MOD VAR)' could simply
expand into
(:module-ref MOD VAR)
in the 'new model'.
--
GPG: D5D4E405 - 2F9B BCCC 8527 692A 04E3 331E FAF8 226A D5D4 E405