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

Re: To quote or not to quote, that is the question

From: David Van Horn <dvanhorn@xxxxxxxxxxxxxxx>
Subject: Re: To quote or not to quote, that is the question
Date: Sat, 19 Sep 2009 09:48:56 -0400

> Robby Findler wrote:
> > I'm not sure about the conclusion, but you can (in a module), do that
> > kind of lifting in a PLT macro. Search for "lifts" in the docs.
> Thanks!  That's useful to know; if `quote' is added I can factor out an 
> implementation-specific reference implementation for that and provide a 
> portable R6RS implementation of the rest.  (It's also good to know for 
> my RaList planet package).
> Do other Schemes provide ways of defining quote-like forms?

SRFI-10 could be used to introduce literals for user-defined
types.  Chicken, Gauche, Guile and STklos support it, AFAIK.

Unfortunatley it has some issues, though: (1) The notation (#,)
conflicts with R6RS.  (2) The semantics of read-time evaluation
is rather defined in ad-hoc way, and it isn't clear what
context the constructor is evaluated.  (3) Macro expansion comes
after read-time evaluation, so there's no way to write a macro
that generates #,-form, etc.