[gambit-list] Puzzlement (different behavior of compiled code)

David Rush kumoyuki at gmail.com
Sun Jun 10 12:05:25 EDT 2012


On 10 June 2012 16:09, Marc Feeley <feeley at iro.umontreal.ca> wrote:
>
> On 2012-06-10, at 10:47 AM, David Rush wrote:
>> also interferes with recognizing keywords. I think i need "-:S"
>> instead, which i guess has been added since I last update my Gambit
>> makefiles (don't ask - it's been a while)
>
> Note that with -:S Gambit recognizes the keyword syntax, but does not
> implement syntax-case.  So I don't think that is what you want (if you want
> define-syntax).

Oh dear, I think the documentation is perhaps a bit confusing on this topic.

from the comments on run-time options.

"The ‘s’ option selects standard Scheme mode. In this mode the reader
is case-insensitive and keywords are not recognized. The ‘S’ option
selects Gambit Scheme mode (the reader is case-sensitive and
recognizes keywords which end with a colon). By default Gambit Scheme
mode is used."

and then there's the comment on define-syntax

"Define name as a macro special form whose expansion is specified by
expander. This form is available only when the runtime option ‘-:s’ is
used. This option causes the loading of the ~~lib/syntax-case support
library, which is the Hieb and Dybvig portable syntax-case
implementation which has been ported to the Gambit interpreter and
compiler. Note that this implementation of syntax-case does not
support special forms that are specific to Gambit."

I will grant that the two options are only superficially similar, but
I found it easy to confuse. How hard is it to get Hieb & Dybvig's
expander to work with the Gambit-mode reader? In any case, I'm sure
this is why I built Al* Petrofsky's syntax-rules expander into my
preprocessor, so it is certainly not a show-stopper for me *now*.

Thanks again to all for the clarification
-- 
GPG Public key at http://cyber-rush.org/drr/gpg-public-key.txt


More information about the Gambit-list mailing list