APL: Difference between revisions
Created page with "==Description== 200px|right A symbolic notation language invented by Kenneth E. Iverson at IBM in 1960. ==A list of OS/2 implementations of APL==..." |
|||
(33 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
[[Image:I_like_APL.gif|200px|right]] | [[Image:I_like_APL.gif|200px|right]] | ||
A symbolic notation language invented by Kenneth E. Iverson at [[IBM]] in | ==History== | ||
A symbolic notation language invented by Kenneth E. Iverson at [[IBM]] and first placed on the market in 1964, originally simply "A Programming Language" but some use the APL name as a class distinction and in that case it means "Array Processing Language". Because of the requirements for an extended character set for the language, APL was traditionally delivered as a hardware/software combination rather than as just a software development package, you can in fact still get keyboards specifically made for APL. | |||
Most IBM implementation of the language are '''APL2''', an IBM developed superset that was primarily designed by Dr Jim Brown, improvements mostly relate to nested arrays. Original inventor Iverson left IBM and vent to create a language called simply '''[[J]]''' that implemented what he saw as the future of APL by adding functional extensions taken from the '''FP''' language and later variant '''FL'''. Other languages based on APL include A, A+, K and Nial. | |||
In the 70s, [[IBM]] and Western Illinois University had an experimental CAI (Computer Aided Instruction) system that was basically an APL system with the [[PILOT]]-73 language bolted on that was simply called "The PILOT/APL CAI system". | |||
==== | ==OS/2 implementations== | ||
* | * [[APL2]] - Commercial | ||
* [[The APL c compiler project]] - APL to C translator - Open source | |||
* [[J]] - Iverson Software Inc. (1992) | |||
==== | ==DOS implementations== | ||
* | * APL*Plus/PC (1982) - STSC Inc. | ||
**Pocket APL | |||
**[http://www.math.uwaterloo.ca/apl_archives/apl/apl-plus/index.html APLSE] | |||
* CAPLIB - APL interpreter | |||
* I-APL/PC - interpreter | |||
* IBM [[APL2]] - Commercial | |||
* IBM PC APL Version 1.0 (1983) | |||
* microAPL (1982) - University of Waterloo / [[WATCOM APL]] | |||
* Portable Software PortaAPL | |||
* Rationalized APL\PC - New Generation APL Research Group (NGARG) | |||
* Sharp APL/PC | |||
== | ==ECMAScript-based implementations== | ||
* | * [https://github.com/ngn/apl NGN APL] - Not complete yet, but works - Open source | ||
==Publications== | ==Publications== | ||
* | * William Prager: ''An Introduction to APL'' - Allyn and Bacon 1971, ISBN 2-04-015638-0 | ||
* Leonard Gilman; Allen J. Rose: ''APL: An Interactive Approach'' 3rd edition - Wiley 1984, ISBN 0-471-09304-1 | |||
* | |||
== | ==Links== | ||
* | * [https://aplwiki.com/ APL Wiki] | ||
* [http://www.rexswain.com/aplinfo.html Rex Swain's APL Information] | |||
* [http://www.sigapl.org/ APL SIG] | |||
;USENET | |||
* [news:comp.lang.apl comp.lang.apl] - Still alive (mostly) | |||
[[Category:Programming Languages]] [[Category:APL]] | [[Category:Programming Languages]] [[Category:APL]] |
Latest revision as of 19:48, 6 January 2023

History
A symbolic notation language invented by Kenneth E. Iverson at IBM and first placed on the market in 1964, originally simply "A Programming Language" but some use the APL name as a class distinction and in that case it means "Array Processing Language". Because of the requirements for an extended character set for the language, APL was traditionally delivered as a hardware/software combination rather than as just a software development package, you can in fact still get keyboards specifically made for APL.
Most IBM implementation of the language are APL2, an IBM developed superset that was primarily designed by Dr Jim Brown, improvements mostly relate to nested arrays. Original inventor Iverson left IBM and vent to create a language called simply J that implemented what he saw as the future of APL by adding functional extensions taken from the FP language and later variant FL. Other languages based on APL include A, A+, K and Nial.
In the 70s, IBM and Western Illinois University had an experimental CAI (Computer Aided Instruction) system that was basically an APL system with the PILOT-73 language bolted on that was simply called "The PILOT/APL CAI system".
OS/2 implementations
- APL2 - Commercial
- The APL c compiler project - APL to C translator - Open source
- J - Iverson Software Inc. (1992)
DOS implementations
- APL*Plus/PC (1982) - STSC Inc.
- Pocket APL
- APLSE
- CAPLIB - APL interpreter
- I-APL/PC - interpreter
- IBM APL2 - Commercial
- IBM PC APL Version 1.0 (1983)
- microAPL (1982) - University of Waterloo / WATCOM APL
- Portable Software PortaAPL
- Rationalized APL\PC - New Generation APL Research Group (NGARG)
- Sharp APL/PC
ECMAScript-based implementations
- NGN APL - Not complete yet, but works - Open source
Publications
- William Prager: An Introduction to APL - Allyn and Bacon 1971, ISBN 2-04-015638-0
- Leonard Gilman; Allen J. Rose: APL: An Interactive Approach 3rd edition - Wiley 1984, ISBN 0-471-09304-1
Links
- USENET
- comp.lang.apl - Still alive (mostly)