[SCL] Re: SCL
Pat Hayes
phayes at ihmc.us
Sun Feb 15 13:27:44 CST 2004
>In the document:
>
>The lexical analysis section needs some touching up:
>wordchar is not defined, seqvarchar is not used, ...
wordchar should be namechar. Fixed.
>
>In the core expression syntax section, termseq is defined
> termseq = S, {term, S}, seqvar?
>which requires some whitespace always be included and
>makes (R) syntactically illegal. It would be defined
>better by
> termseq = {S, term}, (S, seqvar)?
>
>I notice there are some places where whitespace is
>clearly necessary but not specified in the syntax
>(in equalities,
(=(f a)(f b)) seems OK.
I guess we ought to forbid names starting with the '=' character, though.
Actually what is required, I now see, is that if one or the other
term is more than a simple name, then no whitespace is needed; but if
they are both simple names then whitespace is mandatory between them.
Which seems to require re-writing the entire syntax with these two
cases split, just in order to get the whitespace right, so that there
will have to be 2 syntax cases for all the connectives. Sigh.
> separating sentences, and separating
>sentences from connective names, etc.
Since even the smallest sentence must be enclosed by parentheses, I
don't think whitespaces here are needed, though they should obviously
be optional.
>)
>
>The syntax is still somewhat illiberal by Lisp standards,
>since whitespace is often required where no ambiguity
>would result from its omission.
>Lisp allows (R(f a b)(g c)), but your syntax requires
>(R (f a b) (g c)) (whitespace separating all terms, even
>those with parentheses). Is this a feature or a bug?
A bug. I thought I had arranged it so that whitespace next to
parentheses was (almost) always optional.
Clearly I need to go over the syntax (yet) again. If you have any
suggestions for how to do it better, I'd be grateful.
Pat
--
---------------------------------------------------------------------
IHMC (850)434 8903 or (650)494 3973 home
40 South Alcaniz St. (850)202 4416 office
Pensacola (850)202 4440 fax
FL 32501 (850)291 0667 cell
phayes at ihmc.us http://www.ihmc.us/users/phayes
More information about the SCL
mailing list