This site is a static rendering of the Trac instance that was used by R7RS-WG1 for its work on R7RS-small (PDF), which was ratified in 2013. For more information, see Home.
Source for ticket #312
cc
changetime
2012-10-07 12:23:43
component
WG1 - Core
description
Now that @ may begin an identifier, we should probably make
some comment about unquoting, i.e. to distinguish whether
,@foo is (unquote @foo) or (unquote-splicing foo).
Since these identifiers did not exist before, I recommend the
latter (that is, use unquote-splicing if ,@ is seen), and we
should add a note that if you want to unquote an identifier
beginning with add you need to either insert whitespace or
escape the identifier, e.g. , @foo or ,|@foo|.
The good news now is that SXML is no longer invalid syntax.
id
312
keywords
milestone
owner
cowan
priority
major
reporter
alexshinn
resolution
fixed
severity
status
closed
summary
unquoting and identifiers beginning with @
time
2011-12-14 09:24:12
type
defect
Changes
Change at time 2012-10-07 12:23:43
author
cowan
field
comment
newvalue
oldvalue
6
raw-time
1349587423073015
ticket
312
time
2012-10-07 12:23:43
Change at time 2012-10-07 12:23:43
author
cowan
field
resolution
newvalue
fixed
oldvalue
raw-time
1349587423073015
ticket
312
time
2012-10-07 12:23:43
Change at time 2012-10-07 12:23:43
author
cowan
field
status
newvalue
closed
oldvalue
writing
raw-time
1349587423073015
ticket
312
time
2012-10-07 12:23:43
Change at time 2012-04-09 02:06:44
author
cowan
field
comment
newvalue
oldvalue
5
raw-time
1333912004494524
ticket
312
time
2012-04-09 02:06:44
Change at time 2012-04-09 02:06:44
author
cowan
field
owner
newvalue
cowan
oldvalue
alexshinn
raw-time
1333912004494524
ticket
312
time
2012-04-09 02:06:44
Change at time 2012-04-09 02:06:44
author
cowan
field
status
newvalue
writing
oldvalue
decided
raw-time
1333912004494524
ticket
312
time
2012-04-09 02:06:44
Change at time 2012-04-05 09:23:43
author
cowan
field
comment
newvalue
The WG voted to treat `,@foo` as `(unquote-splicing foo)`, requiring `, @foo` for `(unquote @foo)`.
oldvalue
4
raw-time
1333592623897973
ticket
312
time
2012-04-05 09:23:43
Change at time 2012-04-05 09:23:43
author
cowan
field
status
newvalue
decided
oldvalue
new
raw-time
1333592623897973
ticket
312
time
2012-04-05 09:23:43
Change at time 2011-12-14 13:40:56
author
cowan
field
comment
newvalue
No, my test case was incorrectly stated. I retract my comment: `, @foo` works fine to unquote the variable `@foo`.
oldvalue
3
raw-time
1323841256507414
ticket
312
time
2011-12-14 13:40:56
Change at time 2011-12-14 13:30:28
author
arcfide
field
comment
newvalue
The above states that maybe we treat ', @foo' as an unquoted identifier `@foo`, and Chez Scheme does this. Is Chez Scheme not in your test suite, or were you testing something else?
oldvalue
2
raw-time
1323840628044648
ticket
312
time
2011-12-14 13:30:28
Change at time 2011-12-14 13:24:55
author
cowan
field
comment
newvalue
None of my suite of Schemes supports `, @foo` as equivalent to `,@foo`, so I think that option is out. Users will need to write `,|@foo|`, which works on all Schemes that support pipes (some do not, some treat `|` as an ordinary identifier character).
oldvalue
1
raw-time
1323840295416859
ticket
312
time
2011-12-14 13:24:55