APL (язык программирования)
APL | |
---|---|
![]() | |
Класс языка |
модульный |
Появился в | 1964 |
Автор |
Кеннет Айверсон |
Разработчик | Кеннет Айверсон, IBM и Лоуренс Брид[вд] |
Система типов | динамическая |
Основные реализации | IBM APL2, Dyalog APL, APL2000, Sharp APL, APLX |
Диалекты | A+, Dyalog APL, APLNext |
Испытал влияние | математическая нотация |
Повлиял на | J,[1] K,[2] Mathematica,[3] MATLAB,[3] Nial[англ.],[4] PPL, Q |
![]() |
APL (назван по книге A Programming Language)

В своей области применения (физика,
N ← 4 5 6 7
|
Присвоить массиву N значения 4 5 6 7. |
N+4
|
Увеличить значения массива N на 4, и напечатать его. Результат для предыдущего массива будет: 8 9 10 11. |
+/N
|
Напечатать сумму элементов массива N, то есть 22. |
Большое количество специальных символов в синтаксисе APL,
История
Язык APL был разработан Кеном Айверсоном, преподававшим тогда в Гарвардском университете, в качестве системы обозначений для описания вычислений. В 1957 вышла его книга «A Program Language»[5], в которой эта нотация была описана. В 1960 году Айверсон продолжал работу над APL в IBM. Здесь этот язык использовался для описания машинной архитектуры.[6][7]
Первой попыткой реализации APL был написанный для
APL был микропрограммно реализован для портативного компьютера IBM 5100, выпускавшегося в 1973—1982 годах, который иногда называют «первым персональным компьютером». На работу с APL был ориентирован и один из первых ноутбуков — выпущенный в 1985 году Ampere WS-1[серб.][11].
В
В настоящее время язык APL поддерживается практически на всех аппаратных платформах от рабочих станций до наладонных компьютеров. По языку ежегодно проводятся конференции в рамках Association for Computer Machinery (
.Реализации APL
Открытые
- GNU APL
- Проект OpenAPL на сайте SourceForge.net
- NARS2000 — современная OpenSource-реализация APL для Windows
Коммерческие
Примечания
- ↑ A Bibliography of APL and J . Jsoftware.com. Дата обращения: 3 февраля 2010. Архивировано 23 августа 2011 года.
- ↑ Kx Systems - An Interview with Arthur Whitney - Jan 2004 . Kx.com (4 января 2004). Дата обращения: 3 февраля 2010. Архивировано 23 августа 2011 года.
- ↑ 1 2 The Growth of MatLab - Cleve Moler (PDF). Дата обращения: 3 февраля 2010. Архивировано 23 августа 2011 года.
- ↑ About Q'Nial . Nial.com. Дата обращения: 3 февраля 2010. Архивировано 23 августа 2011 года.
- ↑ 1 2 Архивированная копия . Дата обращения: 30 октября 2010. Архивировано 4 июня 2009 года.Архивированная копия . Дата обращения: 30 октября 2010. Архивировано из оригинала 4 июня 2009 года.
- ↑ Programming notation in systems design K.E. Iverson, IBM Systems Journal, 1963 . Дата обращения: 30 октября 2010. Архивировано 24 декабря 2014 года.
- ↑ A formal description of SYSTEM/360 A.D. Falkoff, K.E. Iverson and E.H. Sussenguth, IBM Systems Journal 3.3, 1964 . Дата обращения: 30 октября 2010. Архивировано 24 декабря 2014 года.
- ↑ Abrams, Philip S., An interpreter for «Iverson notation» Архивная копия от 16 декабря 2010 на Wayback Machine, Technical Report: CS-TR-66-47, Department of Computer Science, Stanford University, August 1966.
- ↑ Larry Breed[англ.]. How We Got to APL\1130 (неопр.) // Vector (British APL Association). — 2006. — August (т. 22, № 3). Архивировано 12 мая 2008 года.
- ↑ APL\1130 Manual Архивная копия от 21 февраля 2011 на Wayback Machine, May 1969
- ↑ Младшие братья. История самых первых портативных компьютеров . Дата обращения: 30 октября 2010. Архивировано 13 октября 2010 года.
Литература
- Магариу Н. А. Язык программирования АПЛ. — М.: «Радио и связь», 1983. — 96 с.
- ISO standard 13751 Programming Language APL, Extended
Ссылки
- APL в виртуальном музее Информатики
- Краткая история языка программирования APL
- APL Wiki
- comp.lang.apl
- SIGAPL Home Page
- Quote-Quad newsletter
![]() | В другом языковом разделе есть более полная статья APL (programming language) (англ.). |