[SCL] Approach to a concrete syntax

sowa sowa at bestweb.net
Tue May 20 01:52:03 CDT 2003


Murray,

I realize that you have been trained to ask penetrating questions
about what a notation really means before writing a grammar for it.
For some languages, that is fine thing to do.  But for SCL, that
thinking has already been done in great depth.

It is good to think about the semantics when you're learning SCL,
but it is a mistake to try to rethink it before writing an
XML-based grammar for it.

The following paragraph by Pat gets to the heart of the matter:

 > I would be happier with an XML syntax which followed, rather
 > than re-defined or re-conceptualized, the SCL abstract syntax.
 > The primary purpose of concrete syntaxes is to adequately express
 > the categories and relationships which the spec attaches, in terms
 > of a model theory, to the abstract syntax. The general form of
 > the syntax is a fairly well-developed logical flower at this stage,
 > both in the generalizations it makes and the ones it does not make.

The purpose of the SCL abstract syntax is to state constraints that
define the top-level categories of the syntax.  Then each concrete
syntax (which includes the XML-based version) simply adds more
grammar rules to express the top-level categories in terms of
the concrete strings of whatever notation is being used (in this
case XML).

As Pat said,

 > We have done that thinking and do not want to take it
 > apart and re-do it at this stage.

The best way to define an XML-based syntax for SCL is to approach it
in a brute-force way:  Don't think about what it means.  Just write
grammar rules that express the categories of the abstract syntax
in angle-bracket notation.

Bottom line:  Don't conceptualize.  Don't think.  Don't ask what
it means.  Just write grammar rules.

John

PS:  I won't be able to participate in a telecon today (May 20)
because I have another meeting at that time.




More information about the Scl mailing list