Re: syntax changes (srfi-107/108/109)
John Cowan 30 Dec 2012 03:22 UTC
Per Bothner scripsit:
> There is a seeming ambiguity, since in Scheme the character '&'
> is a valid symbol character. However, a symbol followed
> immediately by either '{' or '[' is not defined by standard
> Scheme, so this is a conflict-free extension.
Unfortunately, &condition[car '(a b c)] is perfectly well-defined
R6RS lexical syntax, where [] means the same as () and symbols
beginning with ampersands are actually standard for names of
condition types. I don't say it should be that way, but it is.
> &{Hello world!}
> &{Hello &[name]!}
+1
> §ion{News as of &(current-date)}
This being, I presume, shorthand for §ion{News as of &[(current-date)]}.
> + Kawa has this syntax for a vector constructor:
> [e1 e2 ... en]
> This is the same as `#(,e1 ,e2 ... ,en), which is the same as
> (vector e1 e2 .. en) except producing an immutable vector.
More to the point, the last is code, whereas the first two are
lexical syntax and therefore work in data. I think it's important
to always keep the data applications firmly in mind.
--
I marvel at the creature: so secret and John Cowan
so sly as he is, to come sporting in the pool xxxxxx@ccil.org
before our very window. Does he think that http://www.ccil.org/~cowan
Men sleep without watch all night?