APLとは? わかりやすく解説

エー‐ピー‐エル【APL】


急性前骨髄性白血病


Apl

名前 アプル

APL

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2026/10/23 08:59 UTC 版)

APL
パラダイム 配列処理
登場時期 1964年
設計者 ケネス・アイバーソン
開発者 ケネス・アイバーソン
型付け 動的型付け
主な処理系 IBM APL2, Dyalog APL, APL2000, Sharp APL, GNU APL
方言 A+, Dyalog APL, APLNext
影響を受けた言語 数学の表記法
影響を与えた言語 J, Mathematica
テンプレートを表示

APL(エーピーエル)は、プログラミング言語のひとつで、1957年のケネス・アイバーソンによる創案に基づいた独特の表記法を用いる。処理系の実装は、ほとんどが対話型インタプリタである。とくに多次元配列の柔軟な処理が特徴である。「APL」は「プログラミング言語」(a programming language) の略であるが、言語の特性から、ときに「配列処理言語」(array processing language) などとされる。

概要

APLは他の多くのプログラミング言語と異なり、「APL記号」と呼ばれる特殊な記号を用いるが、これにより計算式をきわめて簡潔(過ぎるほど)に記述できる。

IBM Selectricタイプライタの「ゴルフボール」印字ヘッドにAPL文字を載せた物を使ったIBM 2741キーボード・プリンター通信端末などを利用した。

特殊な記号の扱いに関しては、キーボードからの入力については、これを支援するためキートップに貼るシールや交換用キーキャップ、はては専用キーボードもある。情報交換用ないし計算機の内部表現としては、従来は1バイトの文字コードを切り替えるなどしていたが、Unicodeでは「その他の技術用記号」(Miscellaneous Technical)に収録された(U+2336~U+237A)。出力は、初期にはIBM Selectricタイプライタのゴルフボール状のタイプボールを専用のものに取り替えて印字された。DOS/Vの、グラフィックによる文字表示環境を利用した処理系が作られたこともあった。現在は(新しく実装されたりしたものでは)前述のUnicodeフォントが使われる。

APLではプログラムを非常に簡潔に記述できるが、その反面、可読性に乏しく、「書き込み専用メモリ」というジョーク由来の「書き込み専用プログラム」とか、「他人の書いたものを修正するくらいであれば、新たに書き起こす方が速い」と言われることもある。

1957年に創案された記法は、1962年に著書 "A Programming Language" として発表された。続いて1964年にプログラミング言語処理系として実装された。1966年にはIBM System/360上のOS、OS/360上での処理系の実装の(インタラクティブ環境を含む)APL\\360 が発表された。

APLはタイムシェアリングシステムで利用できる対話型インタプリタのある言語として注目を集めた。しかしながら、FORTRANほどに普及することはなかった。

マイクロコンピュータからホームコンピュータ(英語版) の時代にはCP/M(CP/M80)上に構築した APL\\80 があり、端末によってはAPL記号を扱うことが可能であった。

1976年にビル・ゲイツが書いた「ホビイストたちへの公開状」には、ゲイツがIntel 8080やMC6800向けのAPLを作成中だが、完成しても違法コピーされるためホビイストには提供できないと書かれている[1]。しかし、結局完成はしなかった。

日本では、日本IBMからの販売の他、1980年代に株式会社アンペールからノート型のAPLマシン"WS-1"が発売された。

APLを発展させた言語に、Jがある。主な変更点の1つに、ASCIIだけで表記するようにした点が挙げられる。

' ( ) + , - . / : ; < = > ? [ ]
\\ _ ¨ ¯ × ÷ ← ↑ → ↓ ∆ ∇ ∘ ∣ ∧ ∨
∩ ∪ ∼ ≠ ≤ ≥ ≬ ⊂ ⊃ ⌈ ⌊ ⊤ ⊥ ⋆ ⌶ ⌷
⌸ ⌹ ⌺ ⌻ ⌼ ⌽ ⌾ ⌿ ⍀ ⍁ ⍂ ⍃ ⍄ ⍅ ⍆ ⍇
⍈ ⍉ ⍊ ⍋ ⍌ ⍍ ⍎ ⍏ ⍐ ⍑ ⍒ ⍓ ⍔ ⍕ ⍖ ⍗
⍘ ⍙ ⍚ ⍛ ⍜ ⍝ ⍞ ⍟ ⍠ ⍡ ⍢ ⍣ ⍤ ⍥ ⍦ ⍧
⍨ ⍩ ⍪ ⍫ ⍬ ⍭ ⍮ ⍯ ⍰ ⍱ ⍲ ⍳ ⍴ ⍵ ⍶ ⍷
⍸ ⍹ ⍺ ⎕ ○
APLキーボード配列

演算機能

APLは他のプログラミング言語と比べ特徴的な演算機能を持つ。特に(他にはPL/Iなどで見られるが)スカラ値だけではなく配列も、式中の演算の直接の対象にできるという原始的なジェネリックプログラミングの機能がある点と、w:Fold (higher-order function)等に類似した高階関数に相当する機能がある点が特徴である。ここではAPLの基本的な演算機能について述べる。

関数と作用子

それぞれ英語ではfunctionとoperatorで、ここでは訳語は日本APL協会が配布している三枝協亮訳「APL2の紹介」のそれに従っている。APLでは、前置演算子ないし中置演算子のように使う記号列を「関数」、関数を対象として操作する高階関数の意味をもつ記号列を「作用子」という。高階関数をoperatorとするのは、解析学における作用素から来ており、作用子の語も「作用素」から来ている。

右から左

まず、四則演算の関数を中置で使う例から始める。一般の算術の式では、ウィキデータを編集

国立図書館 その他

APL

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/09/06 16:36 UTC 版)

「無名再帰」の記事における「APL」の解説

APL, 言語では実行中の dfn を ∇ で参照できる。 {0=⍵:1 ⋄ ⍵×∇ ⍵-1} 5120 {0=⍵:1 ⋄ ⍵×∇ ⍵-1}¨ ⍳10 ⍝ applied to each element of 0 to 91 1 2 6 24 120 720 5040 40320 362880

※この「APL」の解説は、「無名再帰」の解説の一部です。
「APL」を含む「無名再帰」の記事については、「無名再帰」の概要を参照ください。

ウィキペディア小見出し辞書の「APL」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ。



固有名詞の分類


英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「APL」の関連用語

APLのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



APLのページの著作権

   
デジタル大辞泉デジタル大辞泉
(C)Shogakukan Inc.
株式会社 小学館
JabionJabion
Copyright (C) 2026 NII,NIG,TUS. All Rights Reserved.
がん情報サイトがん情報サイト
Copyright ©2004-2026 Translational Research Informatics Center. All Rights Reserved.
財団法人先端医療振興財団 臨床研究情報センター
日外アソシエーツ株式会社日外アソシエーツ株式会社
Copyright (C) 1994- Nichigai Associates, Inc., All rights reserved.
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのAPL (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaの無名再帰 (改訂履歴)、IBM 274x (改訂履歴)、急性白血病 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2026 GRAS Group, Inc.RSS