- From: Christian de Sainte Marie <csma@ilog.fr>
- Date: Tue, 24 Jul 2007 13:59:16 +0200
- To: "Public-Rif-Wg (E-mail)" <public-rif-wg@w3.org>
Michael, I had to strugle to understand the formal syntax for signatures in the BLD draft. Here are a few suggestions that may make it easier to understand. I am refering to section 2.1.1.1 in the version of BLD produced by wiki-tr on July 20. - First, I agree with Chris that the use of 's', first for signature names, then for a set of signature -in defining a coherent set of signatures-, and finally for symbols in "well-formed terms and formulas" is quite confusing; - Signature expressions: is my understanding that signature expressions are always in the form (s1 ... sn) -> s, and that the "s above" in the sentence "If s above is bool then the signature is called a Boolean signature" is the s in (s1 ... sn) -> s? If yes, it implies, as Chris pointed out that boolean signature expressions are a subset of arrow signature expressions, right? Maybe rewriting the def of boolean signature expression could make these clearer: "Arrow and Boolean signature expressions are defined as follows: * Arrow signature expressions are expressions of the form (s1 ... sn) -> s, where s1, ..., sn, and s are signature names from SigNames and where n >= 0. In particular ...; * Boolean signature expressions are arrow signature expressions where s is bool, that is: (s1 ... sn) -> bool, where s1, ..., sn are signature names from SigNames and n >= 0." - You define a signature as a statement of the form s{e1 ... en} with s a name in SigName, and a signature expression as a statement of the form (s1 ... sm) -> s, with si and s signature names from SigNames: since the 2 's' are not related, it may be clearer to use different symbols; - In 2.1.3, the remark that f() and f can be interpreted differently and dialect may introduce axioms to make them equal should be clearly marked as irrelevant to BLD (where symbol f has either signature f0 or i, but not both). Or maybe I just did not understand it yet... Also, I do not clearly understand why you need to introduce the signatures at this stage, although you need them only for future extensions: is it to make sure that all the extensions that will need them, even divergent ones, use the same formal syntax? In any case, what is general should be more clearly separated from what is specific to BLD. If it needs be common to all dialects, maybe it should go in the Arch document? Christian
Received on Tuesday, 24 July 2007 11:59:33 UTC