Re: Lexical syntax for boxes
Per Bothner 24 May 2013 05:47 UTC
On 05/23/2013 06:26 PM, Alex Shinn wrote:
> Well, Scribble is fairly complex too. But on double checking
> SRFI-108 is not as large as I thought - I think it was the whole
> set 107, 108, 109 that was intimidating. I'll take a closer look.
My habit of excessively mentioning every possible alternative
and issue doesn't help any ...
> I think using @ for rough Scribble compatibility, or \ for LaTeX
> familiarity and backwards compatibility with Scheme would be a
> good idea though.
This is discussed here:
http://srfi.schemers.org/srfi-108/srfi-108.html#delimiter-options
as well as the SRFI-10[79] mailing lists.
There was some discussion, and the consensus was &. We can of course
re-open the issue, especially if the "owners" of Scribble get involved.
There are a number of issues to keep in mind, including:
- I'd like to use a "compatible" syntax for SRFI-109 quasi-strings.
If we use & then it is ok to use &{text} for a string, but if we
use @ then @{text} is incompatible with Scribble, so we presumably
have to consider some alternative - like @'{text} of #'{text}.
- Using @ isn't really an option for SRFI-107 XML-literals, so
we'd get less compatibility there.
- Scribble maps @foo{text} to (foo "text") but SRFI-108 maps
it to ($construct$:foo "text"). I think the latter is more
flexible and thus preferable. However, this would be an
incompatibility that reduces the advantage of following Scribble.
- The prefix character @ is natural for a splicing operator,
since it is already used for that in quasi-quotation. Thus
(foo @(list a b c)) would be equivalent to (foo a b c), like
an implicit call to apply. It seems a shame to foreclose that.
--
--Per Bothner
xxxxxx@bothner.com http://per.bothner.com/