Re: Here we go again, pragmas…

"C. M. Sperberg-McQueen" <cmsmcq@blackmesatech.com> writes:
> We didn't have enough proposals floating around? 

I guess not. I was hoping to craft something between the proposal Steven
made and the proposal that you and Tom made.

> It has not worked so well for comments, both from the human point of
[…]
> This is no longer the case, because we change the rule for ixml to
> make

Indeed. By my reckoning (i.e., what my processor does):

S: A.
{ comment }
A: 'a'.

is:

<ixml>
   <rule name="S">
      <alt>
         <nonterminal name="A"/>
      </alt>
   </rule>
   <comment> comment </comment>
   <rule name="A">
      <alt>
         <literal string="a"/>
      </alt>
   </rule>
</ixml>

> whitespace and comments occurring between the full stop of a rule and
> the beginning of the next rule be children of the ixml node, not of the
> rule node.  But for very similar reasons, a rule like
>
>   empty = {nil}.
>
> does not produce
>
>   <rule name="empty"><alt><comment>nil</comment></alt></rule>
>
> but something else; I'll leave working out the details as an exercise
> for the reader.

I get:

   <rule name="empty">
      <comment>nil</comment>
      <alt/>
   </rule>

That’s different than what you suggested, but neither awful nor
obviously wrong to my naive eyes.

> Adding pragma to the right hand side of s in the current grammar does
> not, I think, satisfy the design goal of allowing plausible placement of
> pragmas in both the ixml and the XML forms of a grammar.  Tom and I
> exhibited a grammar for pragmas that I think does satisfy that design
> goal.

I beg your pardon. The pragmas proposal was one of the first things I
tried to understand when I joined the CG and clearly some its technical
details failed to find a resting place in the hollow space between my
ears.

> I believe I have already explained why I think this grammatical approach
> is a design error and described more than once grammatical formulations
> that avoid the error.

Indeed. I was allowing myself to be guided by design choices that are,
on further reflection, not good choices.

> 'Hate' is too strong a word, but I'm not sold on this as a proposal.  I
> think it makes design mistakes we know how to avoid and do not need to
> make.

At this point, I don’t think my musings have anything to add that’s not
already more clearly explained in the proposal that you and Tom
produced. Apologies for wasting everyone’s time. I learned a couple of
things (and did work out how to make comments and pragmas inside pragmas
appear as literal text, not embedded elements), but no one else needed
to see me flailing about.

My one quibble with your proposal is that I am not sold on the
requirement to have qualified names. I might noodle about a bit with a
version that doesn’t have qualfied names, but I’ll keep it to myself :-)

                                        Be seeing you,
                                          norm

--
Norm Tovey-Walsh
Saxonica

Received on Monday, 28 February 2022 18:33:00 UTC