Computing Atlas

How Computing Was Built
Sign In
Text size
100%
Theme
Programming Language

APL

Array Language

APL (A Programming Language) is a programming language centered on multidimensional array processing, developed by Kenneth E. Iverson at Harvard University in the early 1960s, first as a mathematical notation for teaching and later implemented as an executable computer language at IBM. APL is distinguished by its extensive use of a special, non-standard symbol set, requiring specialized keyboards or input methods, and by operators that act on entire arrays at once rather than requiring explicit loops.

Facts
First Released
1966 2
Paradigm
Array, functional, structured, modular 2
Significance
An array based language that influenced spreadsheets, functional programming and computer math packages. 2
Classification
Typing Discipline
Dynamically Typed 1
FAQs

Was APL a working programming language when Kenneth Iverson first designed it?

It began as a mathematical notation in 1957 to 1960 and was first implemented as a subset called APL\360 in 1964.

No. Iverson designed APL at Harvard University between 1957 and 1960 as a notation for the concise expression of mathematical algorithms, not as something a computer could run. For many years the notation went unnamed, sometimes simply being called Iverson's Language, and it stayed unimplemented. A subset called APL\360 was finally implemented in 1964, which is when it became an executable language.
Connections

Base Language For

Direction correction: Dyalog APL is an implementation of the APL language, not the reverse.

Direction correction: GNU APL is an implementation of the APL language, not the reverse.

Direction correction: J was designed by Kenneth Iverson as a successor notation to APL, not the reverse.

Direction correction: K was designed by Arthur Whitney drawing on the APL array-language tradition, not the reverse.

Follows Typing Discipline

In Field

Source Wikipedia: APL (programming language)

Influenced

Nial, Programming Languages

Nial infobox: "Influenced by: APL (programming language), Lisp (programming language)." en.wikipedia.org/wiki/Nial

Invented By

Source Wikidata: APL
Additional Source Wikipedia: Kenneth E. IversonInfobox: known_for
Source Wikidata: APL
Additional Source Lawrence M. Breed, WikipediaInfobox: known_for
Sources
1. Wikidata: APL
  • Wikidata Q296187, resolved via en.wikipedia pageprops (wave rule R-L)
  • Wikidata Q296187 P7078 (typing discipline)
View the Source
2. Wikipedia: APL (programming language)
Wikimedia Foundation
  • Infobox: year
    November 27, 1966
  • Infobox: Paradigm
    Array, functional, structured, modular
  • Article body, influence discussion
    It has been an important influence on the development of concept modeling, spreadsheets, functional programming, and computer math packages.
  • In Field: Programming Language Theory, Lead
    APL (named after the book A Programming Language) is a programming language developed in the 1960s by Kenneth E.
  • In Group: APL and Its Descendants, Lead
    APL (named after the book A Programming Language) is a programming language developed in the 1960s by Kenneth E. Iverson.
View the Source
Lawrence M. Breed, Wikipedia
Invented By: Lawrence M. Breed, Infobox: known_for
Quote, Invented By: Lawrence M. Breed, Infobox: known_for
Implementation of Iverson Notation (APL) Scientific Time Sharing Corporation (cofounder)
View the Source
Wikipedia: Kenneth E. Iverson
Wikimedia FoundationInvented By: Kenneth E. Iverson, Infobox: known_for
Quote, Invented By: Kenneth E. Iverson, Infobox: known_for
Programming languages: APL, J
View the Source
Comments (0)
No comments yet. Be the first to share a thought.
Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.