4,494
edits
m (10 revisions imported: Migrate from miraheze) |
No edit summary |
||
Line 1: | Line 1: | ||
:''A brief review of APL, its origins and what makes it distinctive.'' By Stephen Taylor (lightly edited for APL Wiki). | :''A brief review of APL, its origins and what makes it distinctive.'' By Stephen Taylor (lightly edited for [[APL Wiki]]). | ||
== Origins == | == Origins == | ||
Early programming languages were designed to control what computers do. At Harvard in the 1950s Ken Iverson was revising traditional mathematical notation. He wanted a consistent language for describing operations on arrays, a notation a machine could interpret. | Early programming languages were designed to control what computers do. At Harvard in the 1950s [[Ken Iverson]] was revising traditional mathematical notation. He wanted a consistent language for describing operations on arrays, a notation a machine could interpret. | ||
Iverson was a key member of the early computer science community. At Harvard with [[Wikipedia:Howard Aiken|Howard Aiken]] he taught the world’s first classes on computing. When he published his math notation, he titled the book ''[[A Programming Language]]'' (Wiley, New York, 1962). His teaching assistant at Harvard, [[Wikipedia:Fred Brooks|Fred Brooks]], author of ''[[Wikipedia:The Mythical Man-Month|The Mythical Man-Month]]'', was [[IBM]]’s project manager for the development of OS/360, its first multi-tasking operating system. (OS/360 was the first operating system ever [https://web.archive.org/web/20070710100707/http://www.research.ibm.com/journal/sj/032/falkoff.pdf described formally] — in [[Iverson notation]], of course.) Iverson also went to IBM, who made him a Research Fellow, and [[APL\1130|implemented his notation on an 1130 computer]], where it was dubbed APL after the title of his book. APL\1130 was providing personal computing to a community of users well before OS/360 came to life. | Iverson was a key member of the early computer science community. At Harvard with [[Wikipedia:Howard Aiken|Howard Aiken]] he taught the world’s first classes on computing. When he published his math notation, he titled the book ''[[A Programming Language]]'' (Wiley, New York, 1962). His teaching assistant at Harvard, [[Wikipedia:Fred Brooks|Fred Brooks]], author of ''[[Wikipedia:The Mythical Man-Month|The Mythical Man-Month]]'', was [[IBM]]’s project manager for the development of OS/360, its first multi-tasking operating system. (OS/360 was the first operating system ever [https://web.archive.org/web/20070710100707/http://www.research.ibm.com/journal/sj/032/falkoff.pdf described formally] — in [[Iverson notation]], of course.) Iverson also went to IBM, who made him a Research Fellow, and [[APL\1130|implemented his notation on an 1130 computer]], where it was dubbed APL after the title of his book. APL\1130 was providing personal computing to a community of users well before OS/360 came to life. | ||
Line 31: | Line 31: | ||
== A Shocking Brevity == | == A Shocking Brevity == | ||
APL (A Programming Language) takes its name from [[A Programming Language|the eponymous book]] in which | APL (A Programming Language) takes its name from [[A Programming Language|the eponymous book]] in which Ken Iverson, then teaching mathematics at Harvard, introduced his revised notation for linear algebra. From Harvard he became an IBM Fellow. At IBM, ‘[[Iverson notation]]’ became [[A Programming Language]], distinguished by a shocking brevity. | ||
This brevity originates in | This brevity originates in | ||
Line 43: | Line 43: | ||
=== Unusual Symbols === | === Unusual Symbols === | ||
The single-character APL | The single-character APL [[glyph]]s have frequently been cited as evidence of APL being unintelligible, or “a write-only language”. This can also be said of any unfamiliar language (do [[Wikipedia:regular expression|regular expression]]s attract similar comment?) | ||
The glyphs are largely unnecessary and can easily be replaced by reserved words. This can be helpful for a novice who wishes to separate learning syntax and semantics from mastering a keyboard mapping. However most writers prefer the ‘power shorthand’. For example: | The glyphs are largely unnecessary and can easily be replaced by reserved words. This can be helpful for a novice who wishes to separate learning syntax and semantics from mastering a keyboard mapping. However most writers prefer the ‘power shorthand’. For example: |