Jump to content

APL: Difference between revisions

From EDM2
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==..."
 
Ak120 (talk | contribs)
 
(33 intermediate revisions by 2 users not shown)
Line 1: Line 1:
==Description==
[[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 1960.
==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.


==A list of OS/2 implementations of 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.
*


====OS/2 Libraries and class libraries====
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".
*
====GUI and application generators with APL output====
*


====Translators that generate APL output====
==OS/2 implementations==
*  
* [[APL2]] - Commercial
* [[The APL c compiler project]] - APL to C translator - Open source
* [[J]] - Iverson Software Inc. (1992)


====Workframes and or IDE's====
==DOS implementations==
*  
* APL*Plus/PC (1982) - STSC Inc.
====Editors with APL support====
**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


==A list of DOS implementations of APL==
==ECMAScript-based implementations==
*  
* [https://github.com/ngn/apl NGN APL] - Not complete yet, but works - Open source


====DOS Libraries and class libraries====
*
==A list of APL implementations that run under WinOS/2==
*
==A list of APL implementations that run under Java==
*
==A list of APL implementations in JavaScript==
*
==Publications==
==Publications==
*  
* William Prager: ''An Introduction to APL'' - Allyn and Bacon 1971, ISBN 2-04-015638-0
====Local articles====
* Leonard Gilman; Allen J. Rose: ''APL: An Interactive Approach'' 3rd edition - Wiley 1984, ISBN 0-471-09304-1
*
 
====Tutorials and other learning material====


==Standards==
==Links==
*
* [https://aplwiki.com/ APL Wiki]
* [http://www.rexswain.com/aplinfo.html Rex Swain's APL Information]
* [http://www.sigapl.org/ APL SIG]


==APL history==
;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

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