Peter Relson wrote

<begin extract>
There are quite a few keyword ordering requirements within the grammar
of PROGxx.
<end extract>

This is not in itself objectionable, or even surprising.  It
corresponds roughly to a classical distinction between

positional parameters, which are ordered, must appear in a prescribed
sequence, and

keyword parameters, which are not, may appear in any sequence.

What is wanting in the documentation is 1) any generic discussion of
this distinction and 2) clear identification of which is is which; and
eliminating these lacunæ would possible without heroic effort.

There are other questions that different people will answer differently.

I personally do not think that 'keyword' is used felicitously here.

The use of the term 'keyword', as opposed to 'reserved word'
ordinarily implies context sensitivity but not an ordering requirement
following the first, statement-identifying keyword.

The syntax of PL/I non-assignment statements, from which that of
command-level CICS, some but not all IBM utilities' control
statements,  and much else are derived, permits, for example,

open file(file) buffered record sequential input ;
open input file(file) record sequential buffered ;
open buffered record input file(file) sequential ;

etc., etc.  Here the statement-identifying keyword 'open' must come
first, but the option keywords following it, only some of which have
associated arguments, may appear in any order.

This syntax, which is very easy to parse, has much to recommend it.
Regrettably, it is not the one we are dealing with here.  It is,
however, unwise to expect ad hoc languages to exhibit great formal
clarity.  They do not much resemble explicitly designed
statement-level procedural languages.  They are much more like the
languages we speak: They are not innocent of grammar, but they do
often contain unholy mixtures of several grammars.

John Gilmore, Ashland, MA 01721 - USA
Avant d'imprimer cet e-mail, réfléchissons à l'impact sur l'environnement.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to