Affiliation:
1. School of Computing, University of Tasmania, Launceston, Australia
Abstract
A language like APL was a masterpiece of simplification when seen through the eyes of a computer user of the seventies. The virtues of simplicity are usually held to be many.This paper firstly discusses simplicity in general, reviews some of the writing on simplicity coming from the computing world, and briefly construes the development of APL, and the later J, as being essentially efforts in simplification. Possibilities for further simplification are then canvassed.Firstly, simplification of the usually accepted but unfortunate naming conventions adopted by array processing languages is proposed. Secondly, simplification of the arithmetic is very briefly outlined, more detailed treatment of this topic being available elsewhere. Thirdly, syntactic means for having all functions and operations dyadic are treated, and the advantages of adopting such means evaluated. Fourthly, the possibilities for a newly distinctive kind of function (called extractions) are described. These are considered as a kind of systematic renaming to supply arguments to functions. Fifthly, and in the context of J's simplifications, the need for hyperoperators is asserted. Finally, the nature of interpreters for array processing languages is reviewed, and suggestions made for facilities to be provided by such interpreters to aid the process of developing array processing code.
Publisher
Association for Computing Machinery (ACM)