guile-sources
[Top][All Lists]
Advanced

[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




reply via email to

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