Rank is elucidated through an executable model. Integrated rank support for specific functions can be vastly more efficient than the general algorithm in computing <italic>v"r</italic>, and uniform verbs provide a way to extend the more efficient implementation to a large class of verbs.
Gerunds, verbal forms that can be used as nouns, are recognized as having utility in the realm of programming languages. We show that gerunds can be viewed as arrays of atomic representations of verbs (functions), in a way which is consistent with the syntax and semantics of APL, and which allows verbs to be first class objects in the language. We define… (More)
Though J shares many concepts with APL, in many respects it is radically different, and almost all APL constructions that are in J differ in some way. These differences can be a stumbling block to the newcomer who thinks that J is simply an ASCII version of APL, prompting questions such as:• How do I save my workspace?• Why do J functions work… (More)
We believe that the design of APL was also affected in important respects by a number of procedures and circumstances. Firstly, from its inception APL has been developed by using it in a succession of areas. This emphasis on application clearly favors practicality and simplicity. The treatment of many different areas fostered generalization … —… (More)
Iverson Trains, agendas, and gerunds have been available in J for some time, and do not conflict with most APL systems. In particular, since there are no noun trains, the trains in J do not conflict with the strands of APL2. This paper reviews the definitions and uses of trains, agendas, and gerunds, and presents some new extensions that enhance their… (More)
We had thought to call this paper "Mathematical Roots of APL", but because we wished to concentrate mainly on the later developments, substituted J for APL. Neverthdess, we will begin with a brief discussion of some of the mathematical influences on early APL implementations: ARRAYS. APL arrays were based on the treatment in tensor analysis, with ranks 0,… (More)