Kenneth E. Iverson (1920 – 2004)


Iverson invented APL (A Programming Language), a mathematical notation for manipulating arrays to teach algebra to his students at Harvard. Its elegant design hinged on the 2 rules of practicality and simplicity and was an important advancement in programming language theory.

Before the invention of CRT terminals, APL used a special keyboard layout with Greek letters to allow more effective use through mathematical notation. After Iverson joned IBM, the language also gained traction inside the firm and became popular for timesharing and mainframe systems. IBM introduced APL to a wider market in their 360 and 370 series.

APL’s popularity lay in its ability to manipulate large amounts of data, therefore making it also ideal for programming databases. Although it’s compact, simple and easy to learn, APL’s use of symbols can initially intimidate novice programmers. “You could write a program using APL 10 times faster than with any other languages,” recalls Lib Gibson, an executive with Bell Canada who worked with Iverson in his later years at I.P. Sharp Associates Ltd., a Toronto-based time-sharing company.

After the era of mainframes and timesharing came to an end, Iverson went back to the drawing board in ’89 to work on a new APL based language (interpreter) called “J”. J removed some quirks from APL’s character set issues and added advanced features for functional programming, arrays of variables and more. J also ran on a wider variety of computers and continues to evolve today.

Fun facts:

  • according to his daughter Janet Cramer. “He read dictionaries like people read novels.”
  • the initial description published as 1960 text was titled, “A Programming Language”. Iverson never bothered to name it, so it became known as “APL”.
  • scientists love APL (A Programming Language) to traditional programming languages because APL used concise mathematical notation.
  • Iverson set up the first ever graduate course in computer science at Harvard University.
  • APL’s minimalistic and elegant design allows you to achive much more with less code than most other languagce

Leave a Reply

Your email address will not be published. Required fields are marked *