Development of an APL standard

Following an extended period of development, with more than half a dozen iterations, a standard for APL was not long ago adopted for use within IBM. In this paper we offer some highlights of our experience in this development process, as well as an appendix containing the technical matter in the standard itself. If a standards effort should get under way in the wider APL community, this experience and its work product may perhaps be found useful, and it is offered here in recognition of this possibility, without any commitment on the part of the IBM Company to support or not support such an effort. It should also be understood that this material is not offered as a specification of the function or performance of any particular IBM product. Standards in a field as rapidly changing as computers are not static. This is particularly true with respect to a language like APL, which is still actively evolving. Hence, the document in the Appendix can only be regarded as a snapshot of where we are now. It does not by itself convey any idea of the development process that produced it, just as it does not necessarily represent in any specific detail what it might be in the future. In this paper, then, we will try to show something of the dynamics of the process we participated in by discussing the evolution of several significant aspects of the standard, and sketching the outlines of some of the broader issues that affected the result. The paper has three sections. The first deals broadly with the question of what the standard should include; the second is concerned with the structure and tools of description; and the third traces the development of three technical issues.