Affiliation:
1. Credit Suisse, Zurich, Switzerland
Abstract
A number of proposals have been made so far to extend the array concept of APL to functions thus allowing functions of non-zero array rank [Bernecky 84, Brown 84]. Some of them required significant extensions to the APL language, both in syntax and in functionality. In this paper a scheme is presented which extends arrays to all classes of APL objects:
data, function
and
operator
. It is based on the extensions made by K.E. Iverson, first published in “Rationalized APL” [Iverson 83] and formally described in “A Dictionary of APL” [Iverson 87].
It is shown that the construction of arrays of any class can be achieved without additional extensions to the rationalized APL syntax. True generalized arrays, which may contain enclosed elements of any class, are introduced. A function application operator is proposed which extends the domain of a number of functions to function arrays. Finally the operator is used to rationalize vector and canonical representation of simple, derived and defined functions and function arrays.
Publisher
Association for Computing Machinery (ACM)