History
Kenneth E. Iverson (1920–2004)
Iverson Notation
The q language descends from the mathematical notation devised at Harvard by Ken Iverson for his work on inputoutput matrices with economist Vassily Leontieff – for which Leontieff received the Nobel Prize.
Fred Brooks and Ken Iverson used the notation to teach the world’s first programming course, for which they wrote the textbooks Automatic Data Processing and A Programming Language.
APL
Iverson went from Harvard to IBM, where his notation was implemented as a programming language and dubbed APL, after the title of his book.^{1} Before PCs and spreadsheets, IBM managers throughout the world used APL for personal computing.
APL has inspired major developments in computer science, such as functional programming, and NumPy. In 1979 Iverson received the Turing Award. His Turing lecture “Notation as a Tool of Thought” is a classic.
A+ and J
Iverson was mentor to his friend’s son, Arthur Whitney. They both worked for some years at I.P. Sharp Associates (IPSA) in Toronto.
For IPSA Australia, Whitney rewrote the 500Kb APL interpreter as an 80Kb binary for a minicomputer: SHARP APL/HP.
Later, in New York, he designed and implemented an ASCIIonly subset of APL, dubbed A (later, A+) that for twenty years served as the platform for Morgan Stanley’s trading applications.
Ken Iverson & Arthur Whitney at APL91
In 1990 Iverson stopped working on APL and founded Jsoftware to distribute his ASCIIonly J programming language. Whitney wrote the first draft of the J interpreter.
kdb+ and q
Later iterations of A+ became the k programming language. Whitney and Janet Lustgarten founded Kx Systems to distribute it as kdb+.
Q was written as an embedded domainspecific language – a wrapper – to make k more accessible, with SQLlike queries and Englishlike keywords replacing some of k’s dense rank overloads.
After Kx Systems, Whitney and Lustgarten founded Shakti to release a further iteration of k.
Articles
 AKQJ大师
 Kx Systems: A Historical Need for Speed, Datanami, October 2020
 APL Since 1978, Proc. ACM Program. Lang., Vol. 4, No. HOPL, Article 69. June 2020
 Stages of Denial, John Earnest, March 2020
 Vector processing languages: the future of Big Data analytics and realtime business intelligence, Conceptual Origami, 2010
 A conversation with Arthur Whitney, ACM, 2009
 An interview with Arthur Whitney, KX, 2004
Archive
 Abridged q language manual, Arthur Whitney, 2009
 Abridged kdb+ database manual, Arthur Whitney, 2006
 Kdb+ database reference manual, Don Orth, 2006
 Q language reference manual, Don Orth, 2006
 Abridged kdb+tick manual, Arthur Whitney, 2005
 Abridged kdb+taq manual, Arthur Whitney, 2005
 Kdb+ database and language primer, Dennis Sasha, 2005

A proposal to call the notation Iverson’s Better Math was rejected as facetious. ↩