The evolution of APL
@article{Falkoff1978TheEO, title={The evolution of APL}, author={Adin D. Falkoff and Kenneth E. Iverson}, journal={ACM SIGPLAN Notices}, year={1978}, volume={13}, pages={47-57} }
This paper is a discussion of the evolution of the APL language, and it treats implementations and applications only to the extent that they appear to have exercised a major influence on that evolution. Other sources of historical information are cited in References 1-3; in particular, The Design of APL [1] provides supplementary detail on the reasons behind many of the design decisions made in the development of the language. Readers requiring background on the current definition of the…
20 Citations
A survey of extensions to APL
- MathematicsAPL '82
- 1982
A survey of proposed extensions to the APL language is made with emphasis placed on the motivations for various proposals, the differences between them and the consequences of their adoption. Some…
APL since 1978
- Computer ScienceProc. ACM Program. Lang.
- 2020
The details of what are the most significant language features that made it through the occasionally unnatural selection imposed by the loss of habitats that disappeared with hardware, software platforms, and business models are discussed.
History of IBM's Technical Contributions to High Level Programming Languages
- Computer ScienceIBM J. Res. Dev.
- 1981
IBM's technical contributions to high level programming languages from the viewpoint of specific languages and their contributions to the technology are discussed.
An Array and List Processing System
- Computer ScienceILC
- 2014
It is shown how using their common features as design principles, the mathematical power of APL and the flexibility of LISP are combined into a simple yet effective tool for diverse system engineering tasks.
The IBM Family of APL Systems
- Computer ScienceIBM Syst. J.
- 1991
The developmental history of IBM subfamilies of APL systems is traced in this paper, focusing on the inter-relationships among them and the methods of implementation used by the various groups…
The socio-technical beginnings of APL
- Computer ScienceAPLQ
- 1979
This paper gives some of the history of the early implementations of APL, and concentrates on the system aspects of these implementations, paying special attention to the evolution of the workspace…
Syntax and Semantics of Programming Languages Versus CAD/CAM Requirements: the Role of Artificial Intelligence Languages
- Computer Science
- 1983
Word, image and metaphor to name APL concepts in many tongues
- LinguisticsAPL '84
- 1984
APL notation uses symbols rather than words. But discussion and education require the use of words. A well-chosen term can make a new concept plain, or link it effectively to related topics. The…
979 Acm Turing Award Lecture
- Computer Science
In making i~s :seiec~iom {he Genera! Technk'at Achievemem Award (iota-. mittee cited Iverson for his pioneering etTbr~ m programming hmguages and mathematical notation restJltmg in what @e computing…
Induction Operators and Intermediate Forms
- Computer Science
- 1995
Two features that operate on sequences and thus hide simple loops are added to typical compiler intermediate representations, which simplifies many optimizations and should be possible for loop analyzers to retrofit these operators to existing IRs.
References
SHOWING 1-10 OF 68 REFERENCES
An APL historical note
- Computer ScienceAPLQ
- 1977
The APL\360 System was designed and imple-Ryniker, and myself helped tie everything together for the released system, and inspired many changes to the system including the implementation of dyadic query and circular functions.
An interpreter for Iverson notation
- Computer Science
- 1966
The current report contains an up-to-date definition of a subset of the language, based on recent work by Iverson and his colleagues, and critiques of the implementation and the language.
Formalism in programming languages
- Computer ScienceCACM
- 1964
The speaker felt that there was no inherent l imitat ion in his system with respect to backup distance, and remarked that the bottom-up methods seemed to permit better handling of "ndrror recursion" and did feel, however, that the transformation was easier than conventional methods.
Some implications of shared variables
- Computer ScienceAPL '76
- 1976
Current APL systems, such as APLSV, embody two shared variable facilities: one for establishing temporary interfaces between system components, and the other one for defining parts of the permanent interface between an APL program and the underlying processor.
APL comparison tolerance
- Computer ScienceAPL '76
- 1976
An important aspect of the original implementation of APL\360 was the treatment of arithmetic functions as abstract functions defined on the continuous set of real numbers [1,2]. This had various…
Algebra: an algorithmic treatment
- MathematicsAPLQ
- 1974
This book treats the topics usually covered in a second course in high-school algebra using the notation of APL in place of conventional mathematical notation so that all expressions occurring in the…
A programming language
- Computer ScienceAIEE-IRE '62 (Spring)
- 1962
The paper describes a succinct problem-oriented programming language that relies heavily on a systematic extension of a small set of basic operations to vectors, matrices, and trees, and on a family of flexible selection operations controlled by logical vectors.
A Formal Description of SYSTEM/360
- Computer ScienceIBM Syst. J.
- 1964
All SYSTEM/360 functional characteristics having programming significance are completely and concisely described.
The description, which is formal rather than verbal, is accomplished by a set of…
Experimental personalized array translator system
- Computer ScienceCACM
- 1964
A system designed for intimate man-machine interaction in a general-purpose problem-solving environment is experimentally operational. The system utilizes an array-oriented symbolic source language…
The design of APL
- Computer ScienceAPLQ
- 1975
The paper gives the rationale for many specific design choices, including the necessary adjuncts for system management, and emphasizes and illustrating the principles underlying its design.