A Brief History of the Rexx Standard

Dr. Brian Marks, Formcroft Ltd.

If you are unfamiliar with how standards are developed, the history of the Rexx Standard may give some insight. The idea of a standard was first promoted by Linda Green, the IBM representative to the SHARE organization at the time. There was enthusiasm for the idea at the very first Rexx Symposium, which allowed Linda to make a case to the authorities, who allowed Linda to convene the first meeting. This was attended by several of the parties with a producer or user interest in Rexx and they "bootstrapped" themselves to being a committee by suggesting Brian Marks as chairman, a choice subsequently endorsed by the Information Technology Industry Council which administers this class of standard.

Some people joined the committee later, some left, with typically around fifteen members at any time, of whom ten could make a particular meeting. The meeting locations were decided by the committee on pragmatic grounds, for example to be with the symposium or to be where there was a volunteer to make arrangements. You may not feel that the list of locations consists entirely of good places for meetings, but some of them are! (The list is Washington, Asilomar, Chicago, Annapolis, Endicott, NY, Berkeley, CA, San Diego, Orlando, Anaheim, Boston, State College, PA, Boca Raton, FL, and Austin, TX.)

Ultimately, decisions of standardizing groups are the result of majority voting. In practice, the consensus achieved meant that there was almost no voting, apart from the formally required vote that the draft standard was ready for public review.

A typical meeting would have three components - the project itself (appointing officials, noting progress, planning the next meeting...), the framework of the draft standard itself (what is left to the system underlying Rexx, what is defined in Backus-Naur Form, what is defined by providing Rexx code...), and the technical content (resolving conflicts within current practice, deciding where extension is justified, wording error messages...). Also, to take advantage of the gatherings, there were some separate meetings to discuss extensions that would not be in the first standard, but might be in another standard.

The year 1991 resolved the overall tone of the project as a mild superset of the existing practices, with any necessary resolution between conflicting practices. There were some major decisions, such as whether "Variable Pool" interfaces were to be standardized. In 1992, more detail material was developed, such as code showing the logic of PARSEing, and decisions where made on what to do, e.g. about different practices for the negation operator.

It is worth noting that the questions of "how it should be written" provoked almost as much discussion as "what it should say". In particular, the ways of describing how keywords are recognized, and the style of indenting the code in the standard, were contentious issues.

1993 saw details of new features (such as the extended ADDRESS instruction) established and work done on features such as TRACE which were found to be not 100% completely defined in existing Rexx books. By this time the committee had established its list of places where departing from existing practices was justified. (The reasoning for them appears in the standard as commentary.) 1994 was devoted to all the details in the draft document that it was necessary to get complete and correct so that the document could go for public review in 1995. The standard was not officially a standard until 1996 because of the time taken for approvals at various higher levels in the standards organization, and the time for the American National Standards Institute (ANSI) organization to make printed copies for sale.

This process may seem unduly slow, but it should be remembered that the committee members were mostly in full time employment at other jobs, so only the time spent at the actual meetings could be fully effective.

The key contributors are listed in the standard. Three deserve particular mention - Mike Cowlishaw, who attended every meeting and had the greatest technical influence, and the two editors, Klaus Hansjakob and Tom Brawn. The Editor is particularly important to any standards development, involved with both the 'what' and the 'how'. And the Editor has the most to do between meetings!