Re: A different comment syntax question

Rob Cameron (cameron@cs.sfu.ca)
Fri, 17 Jul 1998 09:19:32 -0700 (PDT)


Makoto replies:
> Rob Cameron wrote:
> >
> > If, as I assume, the answer is that only the double hyphen case
> > is a concern, then the grammar needs to be changed.
> >
> > Comment ::= '<!--' (Char* - (Char* '--' Char*)) '-->'
> >
>
> This is semantically identical to the current rule:
>
> Comment ::= '<!--' ((Char - '-') | ('-' (Char - '-')))* '-->'
>

No, I don't think it is equivalent. Proof:
(a) No string in (Char - '-') ends with a hyphen. (This is the
set of all single character strings except the hyphen.)
(b) Thus, no string in ('-' (Char - '-')) ends with a hyphen.
(c) Thus, no string in ((Char - '-') | ('-' (Char - '-'))) ends
with a hyphen.
(d) Thus, no string in ((Char - '-') | ('-' (Char - '-')))* ends
with a hyphen.

Robert D. Cameron, Associate Professor cameron@cs.sfu.ca
School of Computing Science FAX: (604) 291-3045
Simon Fraser University
Burnaby, B.C., Canada V5A 1S6

Internet Electronic Library Project at SFU
http://elib.cs.sfu.ca/