- From: Michael Kifer <kifer@cs.sunysb.edu>
- Date: Mon, 10 Sep 2007 12:38:56 -0400
- To: "Sandro Hawke" <sandro@w3.org>
- Cc: "RIF WG" <public-rif-wg@w3.org>
> > kifer@cs.sunysb.edu (Michael Kifer) writes: > > > > Sandro, you are looking in a wrong place. Look at the abstract syntax. > > Instead, you are looking at a translation algorithm! > > No, I don't think so. > > Yes, I could have compared the abstract syntax. In that case I would > have compared what's in the BLD draft... > > Equal ::= 'Equal' > '(' > 'side' '->' TERM > 'side' '->' TERM > ')' > > to some asn07 like this: > > class Equal > property left: Term > property right: Term > > in which case I also have a strong preference for the asn07. I, on the other hand, do not. With the BNF-like syntax one could even write examples (although a bit awkward), while this cannot be done with asn07. > But, no, instead I chose to focus on the specification of the mapping > from abstract syntax to presentation syntax. For that, I quoted the BLD > text which specifies the mapping for Equal and showed it with the a > single line of sbnf which performs the same function. (The fact that > the text in BLD shows more of how to one might perform that > transformation, instead of *just* specifying it -- that surely accounts > for why it is so much more complicated -- but I don't see that as a > benefit.) The transformation establishes the relationship between the abstract syntax and the concrete one. One cannot have several syntaxes in the document without telling what the relationship is. --michael > > -- Sandro > > > > > > kifer@cs.sunysb.edu (Michael Kifer) writes: > > > > > > > > "Sandro Hawke" <sandro@w3.org> wrote: > > > > > > > > > > "Boley, Harold" <Harold.Boley@nrc-cnrc.gc.ca> writes: > > > > > > > > > > > > Based on the recent discussions, I updated the Abstract Syntax by also > > > > > > just using EBNF and introduced Abstract-to-Concrete Mappings for: > > > > > > > > > > > > http://www.w3.org/2005/rules/wg/wiki/Core/Positive_Conditions > > > > > > http://www.w3.org/2005/rules/wg/wiki/Core/Horn_Rules > > > > > > http://www.w3.org/2005/rules/wg/wiki/Core/Slotted_Conditions > > > > > > > > > > > > Thus, unresolved dependencies on a future metalanguage for defining > > > > > > the RIF Syntax were removed, especially in the Slotted Conditions. > > > > > > This can now contribute to speeding up our editorial BLD WD2 work. > > > > > > > > > > What's the advantage of this formalism over SBNF? It seems much more > > > > > complicated to me. > > > > > > > > > > - s > > > > > > > > As far as I can see, this is a slight elaboration (and, perhaps, a visually > > > > more convenient form) of your own proposal of a couple of weeks ago. > > > > Can you explain where do you see the differences? > > > > > > If you find this: > > > > > > class2token('Equal','=') > > > abs2con4g('Equal' > > > '(' > > > 'side' '->' TERM1 > > > 'side' '->' TERM2 > > > ')', > > > TokenTable) > > > = > > > TERM1 lookup('Equal',TokenTable) TERM2 > > > > > > more "visually convenient" than this: > > > > > > Equal ::= left::Term '=' right::Term > > > > > > then I have no idea where to begin this discussion. > > > > > > > (Your syntax was at times at odds with the formal syntax, and that has been > > > > fixed. > > > > > > I think I was trying to match the BNF not the formal syntax, but that > > > was just for illustration purposes anyway. > > > > > > > Otherwise, the two seem basically isomorphic to me.) > > > > > > They appear equalent in some essential ways -- a bit like C++ and > > > assembly are equivalent, I guess. I have a pretty strong preference for > > > one style over the other. > > > > > > -- Sandro > > >
Received on Monday, 10 September 2007 16:39:06 UTC