APL\1130
APL\1130 was a reimplementation of APL\360 for the IBM 1130 minicomputer, a less expensive and smaller computer than the System/360 mainframe. Released in 1968, APL\1130 was the first publicly available APL system (APL\360, while implemented in 1966, was published later that year).[1] It became the most popular IBM Type-III Library that IBM released,[2] contributing to the success of the first APL conference.[3]
Implementation
APL\1130 was implemented primarily by Larry Breed and Phil Abrams, with later contributions by other programmers including Charles Brenner and Eric Iverson.[2] The IBM 1130 architecture differs significantly from the System\360: it is a 16-bit machine rather than 32-bit, with a different instruction set, and has no native floating-point support: instead, Hirondo Kuki's 32-bit floating-point routines were used.
The program that became APL\1130 was developed for a different machine: a prototype called "Elsie" (from the acronym LC, for Little Computer). In 1967 Breed and Abrams ran this program on an Elsie emulator written for the IBM 1130 by Reve Carberry. The very slow APL implementation that resulted was incrementally rewritten in native code. Before its release Charles Brenner and summer student Alan Nemeth implemented full keyboard support, improved performance, and completed the set of supported primitives.[2]
Version 2, released in 1969, brought the implementation much closer to APL\360. Notably, it extended support for identifiers from a single character to a maximum of six.[4] It was implemented by Eric Iverson and David Oldacre.[2]
References
- ↑ Adin Falkoff. "APL\360 History" (web) at APL69.
- ↑ 2.0 2.1 2.2 2.3 Larry Breed. How We Got To APL\1130. Vector journal vol. 22 no. 3. 2006-08.
- ↑ Ray Polivka and Jon McGrew. "A Quote Quad Interview: Garth Foster". APL Quote Quad Volume 26 Number 1. 1995-09.
- ↑ Carberry et al. "Contributed Program Library: A Programming Language/1130". IBM. 1969-05-05.
APL dialects [edit] | |
---|---|
Maintained | APL+Win ∙ APL2 ∙ APL64 ∙ APL\iv ∙ Aplette ∙ April ∙ Co-dfns ∙ Dyalog APL ∙ Dyalog APL Vision ∙ dzaima/APL ∙ GNU APL ∙ Kap ∙ NARS2000 ∙ Pometo ∙ TinyAPL |
Historical | A Programming Language ∙ A+ (A) ∙ APL# ∙ APL2C ∙ APL\360 ∙ APL/700 ∙ APL\1130 ∙ APL\3000 ∙ APL.68000 ∙ APL*PLUS ∙ APL.jl ∙ APL.SV ∙ APLX ∙ Extended Dyalog APL ∙ Iverson notation ∙ IVSYS/7090 ∙ NARS ∙ ngn/apl ∙ openAPL ∙ Operators and Functions ∙ PAT ∙ Rowan ∙ SAX ∙ SHARP APL ∙ Rationalized APL ∙ VisualAPL (APLNext) ∙ VS APL ∙ York APL |
Derivatives | AHPL ∙ BQN ∙ CoSy ∙ ELI ∙ Glee ∙ I ∙ Ivy ∙ J ∙ Jelly ∙ K (Goal, Klong, Q) ∙ KamilaLisp ∙ Lang5 ∙ Lil ∙ Nial ∙ RAD ∙ Uiua |
Overviews | Comparison of APL dialects ∙ Timeline of array languages ∙ Timeline of influential array languages ∙ Family tree of array languages |