Re: sbnf (striped BNF)

kifer@cs.sunysb.edu (Michael Kifer) writes:
> 
> (resending due to my email troubles in the morning)
> 
> Sandro Hawke wrote:
> >
> > If the asn is to be completely redundant, we need to add a flag in there
> > that the arguments are ordered, perhaps like:
> > 
> >     Uniterm ::= op::Const "(" args::List(Uniterm*) ")"
> >     Uniterm ::= op::Const "(" args::List((Uniterm ("," Uniterm)*)?) ")"
> > 
> 
> Is it necessary to say in the syntax that the arguments are ordered or
> unordered? I would think that this is a matter of the semantics (and
> semantics handles this just fine right now).

It's not necessary at the BNF level, but I think it's highly desirable
at the ASN level, because the ASN corresponds to the abstract data types
one needs for holding the instance data (the rulesets), and I think it's
important to have different data structure APIs for sets (or multisets,
or multimaps, depending how you look at it) and lists.  So, if the ASN
is to be derivable from the BNF, then the BNF needs this information.

  - s

Received on Wednesday, 5 September 2007 20:08:57 UTC