IBM®
Skip to main content
    Country/region [change]    Terms of use
 
 
 
    Home    Products    Services & solutions    Support & downloads    My account    

IBM Technical Journals

Special report: Celebrating 50 years of the IBM Journals
All topics > Software >

The design of APL

Award plaque by A. D. Falkoff
and K. E. Iverson

This paper discusses the development of APL, emphasizing and illustrating the principles underlying its design. The principle of simplicity appears most strongly in the minimization of rules governing the behavior of APL objects, while the principle of practicality is served by the design process itself, which relies heavily on experimentation. The paper gives the rationale for many specific design choices, including the necessary adjuncts for system management.

Originally published:

IBM Journal of Research and Development, Volume 17, Issue 4, pp. 324-334 (1973).

Significance:

APL is the abbreviation for A Programming Language, the title of Kenneth Iverson's book (John Wiley and Sons, Inc., 1962) in which he describes the notation he invented while at Harvard University for writing precisely and unambiguously about computer-related artifacts. Falkoff and Iverson's paper discusses the development of the language, emphasizing and illustrating the principles underlying its design. The principle of simplicity takes the form of uniformity (rules are few and simple), generality (specialized functions are provided as special cases of a small number of general functions), familiarity (familiar symbols and usages are adopted whenever possible), and brevity (the economy of expression for which APL is famous). The principle of practicality ruled the design process, as the language was developed and extended only after extensive experimentation.

From the time APL was first implemented at IBM as an interpreted, interactive system, users have appreciated its power, conciseness, ease of learning and use, quick response time, and ease of fixing errors. It has been used in a wide variety of contexts, and in particular in simulations and in mathematical and financial applications. The APL2 product from IBM is available for the entire range of machine environments, from mainframes to PCs. In 1979 Ken Iverson received the A. M. Turing Award from the Association for Computing Machinery (ACM) in recognition of the impact that his work, in particular, APL, had on the technical community.

Comments:

See Kenneth E. Iverson's ACM A. M. Turing Award (1979).


    About IBMPrivacyContact