Jump to content

APL: Difference between revisions

From EDM2
Ak120 (talk | contribs)
mNo edit summary
Ak120 (talk | contribs)
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[Image:I_like_APL.gif|200px|right]]
[[Image:I_like_APL.gif|200px|right]]
==History==
==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 in a hardware/software combination rather that as just a software development package, you can in fact still get keyboards specifically made for APL.
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 on 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.
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".
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==
==OS/2 implementations==
Line 13: Line 13:


==DOS implementations==
==DOS implementations==
* APL*Plus/PC (1982) - STSC Inc. - [http://www.math.uwaterloo.ca/apl_archives/apl/apl-plus/index.html APLSE]
* APL*Plus/PC (1982) - STSC Inc.
* I-APL/PC
**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 [[APL2]] - Commercial
* IBM PC APL Version 1.0 (1983)
* IBM PC APL Version 1.0 (1983)
* microAPL (1982) - University of Waterloo
* microAPL (1982) - University of Waterloo / [[WATCOM APL]]
* Portable Software PortaAPL
* Rationalized APL\PC - New Generation APL Research Group (NGARG)
* Rationalized APL\PC - New Generation APL Research Group (NGARG)
* Sharp APL/PC
* Sharp APL/PC
Line 32: Line 36:
* [http://www.rexswain.com/aplinfo.html Rex Swain's APL Information]
* [http://www.rexswain.com/aplinfo.html Rex Swain's APL Information]
* [http://www.sigapl.org/ APL SIG]
* [http://www.sigapl.org/ APL SIG]
* [https://sites.google.com/site/baavector/ British APL Association]


;USENET
;USENET

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

DOS implementations

  • APL*Plus/PC (1982) - STSC Inc.
  • 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