頂10篇文章

土豆
烏龜
薑黃
Gmail
第二次世界大戰
DirectX
光合作用
菲律賓
第一次世界大戰
板岩

News:

APL (編程語言)

APL
範例 列陣, 功能, 構造模件
出現 1964
設計 肯尼斯E。 艾文森
開發商 肯尼斯E。 艾文森
鍵入的學科 動態
主要實施 IBM APL2, Dyalog APL, APL2000,鋒利的APL
方言 A+Dyalog APL, APLNext
影響 數學符號
影響 J, K, Nial

APL (A Programming Language)是 列陣編程 1957年根據記法的語言發明 肯尼斯E。 艾文森 當在時 哈佛大學. 它發源作為企圖為對題目的教學和分析提供一致的記法與計算機的應用有關。 1962年艾文森出版了他的記法在題為的書 一種編程語言. 在1965年以前,記法的一個子集被實施了作為一種編程語言,然後知道作為IVSYS。 以後,在它的商業發行之前, APL從書的標題得到了它的名字。 艾文森接受了 Turing獎 1979年為他的工作。

艾文森的記法以後用於描述 IBM System/360 比現有的文獻和顯露幾個早先未被注意的問題用機器製造建築學,描述更多簡明和確切。 以後, a Selectric typeball特別地被設計寫這個記法的一個線性表示法。 APL的這個特別方面,視覺上描述操作的對一個特別字符集的用途將執行,今天依然是根本上未改變。

APL語言特色在整個運作操作的充足的規定 列陣 數據,像a傳染媒介指令組 SIMD 建築學。 當許多計算機語言將要求時 疊代 對,例如,典型地把二個列陣加起來,作用在APL成交以整個列陣立即。 與一個特別字符集一道,縱的溝紋代表將執行的操作,這猛烈地減少圈的潛在的數量并且考慮到更小,更加簡明和更加緊湊的節目。

和以有幾十年連續用途的所有編程語言, APL顯著演變了,一般以向上兼容方式,從它更加早期的發行。 APL通常是 解釋性 并且 交互式和通常以為特色讀評估打印圈(REPL)為命令和表示輸入。 今天,幾乎所有現代實施支持 結構化編程 當幾種方言現在以某種形式為特色時 面向對象 編程的修建。

內容

歷史

什麼的第一化身是更晚是APL編程語言1957年是描述記法的書被發明 肯尼斯E。 艾文森 當在時 哈佛大學. 1962年出版,在書描述的記法從APL是可認識,並且遙遠的。

IBM首要負責APL的介紹對市場。 1965年,記法的部分被整頓了并且實施了作為一種編程語言。 1967年APL首先是可利用的為 IBM 1130年 APL \ 1130年[1]. APL通過80年代在計算機主機分時系統得以它的立足從60年代後期。 以後,當適當執行硬件是最後可利用開始在早期到80年代中期,許多用戶移居他們的應用對個人計算機的環境。

早期的IBM APL口譯員為 IBM 360 并且 IBM 370 硬件實行他們自己的多用戶管理而不是因而依靠主機服務,他們是分時系統。 1966年首先介紹, APL \ 360 系統是一個多用戶口譯員。 1973年,被發布的IBM APL.SV 哪些是提供同一個產品的繼續,但 共有的可變物 作為手段訪問設施在APL系統外面,例如操作系統的文件。 在70年代中期, IBM計算機主機口譯員在甚而適應了為使用 IBM 5100 臺式計算機,有小CRT和一個APL鍵盤,當時間的多數其他小型計算機只提供了BASIC。 在80年代, VSAPL 程序產品享受普遍用法與 CMS, TSO, VSPCCICS 用戶。

幾家分時企業在使用IBM APL \ 360口譯員的修改過的版本賣APL服務的60年代和70年代出現了。 在北美洲,更加著名部分 i. P. 銳利同事, scientific Timesharing Corporation和計算機公司(TCC)。 以首先出現較不昂貴的計算機主機例如IBM 4331和以後個人計算機,分時產業有所有除了在80年代中期以前消失。

鋒利的APL 是可利用的從 i. P. 銳利同事首先根據分時依據在60年代和以後作為程序產品開始大約1979年。 鋒利的APL 是先進的APL實施以許多語言引申,例如 包裹 (能力放一個或更多對象入唯一可變物),文件系統,築巢了列陣,和 共有的可變物.

APL口譯員是可得到從其他計算機主機,并且微型計算機製造,著名地 Burroughs, CDC, 通用數據, 12月, 哈里斯, 惠普, 西門子, Xerox和其他。

APL2

開始在80年代, IBM APL發展,在博士的領導下 吉姆・布朗實施包含作為它的主要改進概念的APL語言的一個新版本 被築巢的列陣 那裡列陣也許包含其他列陣,加上促進被築巢的列陣綜合化入節目工作流的新的語言特色。 肯・艾文森,不再由APL語言控制,左IBM的發展和加入 i. P. 銳利同事 那裡他,尤其,指揮鋒利的APL的演變是更多根據他的視覺。 艾文森後開發了 J語言.

因為其他供營商忙於開發的APL口譯員為新的硬件,著名地 Unix-基於 微型計算機 APL2幾乎總是為新的APL口譯員發展選擇的標準。 今天,多數APL供營商援引APL2兼容性,只接近100%,作為一個賣點為他們的產品。

APL2 為IBM主機是可利用的今天,并且首先是可利用的為 CMS 并且 TSO 大約1980年。 APL2工作站編輯(窗口、OS/2、AIX、Linux和Solaris)在90年代以後跟隨了。

微型計算機

APL的第一微型計算機實施在MCM/70, 8008-基於處理器, 1973年。 A 小APL 為英特爾8080叫的EMPL被發布了1977年和Softronics APL,與大多充分的APL的作用, 1979年,為了基於8080的CP/M系統被發布了。

1977年,被發布了企業水平APL以TIS APL著名,根據Z80處理器。 它通過介紹~以文件作用為特色全套為APL,加上正確和左論據一個整個銀幕的輸入和開關為多數二的操作員。 前綴對所有唯一字符二的作用例如-或/。

先鋒APL是可利用的為 Z80 CP/M-基於處理器在70年代末期。 TCC被發布的APL.68000在80年代為Motorola 68000-基於處理器,這個系統是為MicroAPL有限的APLX產品的依據。 i. P. 銳利同事發布了他們的APL口譯員的版本為IBM個人計算機和PC/370 -為IBM個人計算機, 仿真器 被寫了促進重複利用許多IBM 370計算機主機代碼。 可爭論,最響譽的APL口譯員為IBM個人計算機是 STSC『s APL*Plus/PC。

在80年代, Analogic被開發的Corporation APL機器陳列處理 計算機在APL設計仅被編程。 實際上有三個處理器,用戶的工作站, IBM個人計算機節目被進入了并且被編輯了的地方, Motorola 6800 跑APL口譯員的處理器和執行原始的類推陳列處理機。 在它的介紹之時APL機器是可能的最快速的APL系統可利用。 雖然技術成功, APL機器是營銷失敗。 最初的版本每次支持一個唯一過程。 在項目被中斷了時候,設計完成允許廣泛用戶。 作為旁, APL機器的一個異常的方面是工作區圖書館被組織了這樣由許多工作區分享的唯一作用或可變物在圖書館裡只曾經存在了。 數APL機器項目的成員早先度過了一定數量的歲月以Burroughs實施 APL \ 700.

在一個階段, 微軟公司 計劃發布APL的版本,但這些計劃未曾實現。

早期1978年出版物 Rodnay ZaksSybex編微程序的APL實施 國際標準書號0895880059 哪些是完全,總來源實施APL的目錄為微指令為PDP/LSI-11處理器。 這也許是他的PhD論文物質。

概要

[原始的研究?]

在非常寬套問題領域(算術、科學、工程學、計算機設計、機器人學、數據形象化、保險統計計算科學、傳統DP等等) APL是一極端強有力的,傳神,并且簡明的編程語言,在一個交互式環境裡典型地設置了。 它最初被創造了,尤其,作為方式描述計算機,通過表達 數學符號 用可能由計算機解釋的一種嚴謹方法。 學會是容易的,但一些APL節目可能需要某個時候特別是為新來者瞭解。 少量其他編程語言提供APL的全面列陣功能。

不同於傳統上結構化編程語言,代碼在APL典型地被構造作為鏈子 一元 作用 并且 操作員 行動 列陣. 因為APL有非標準的許多 原始 (作用和操作員,表示由一個唯一標誌或幾個標誌的組合),它沒有作用或 算符優先. 早APL實施沒有 控制結構 (做或,當圈,如果然後-)時,但通過使用列陣操作,用法 結構化編程 修建不是就是必要的。 例如,產生一個一維列陣的iota作用(或者傳染媒介,從1到N)可能替換為圈 疊代. APL的最近實施一般包括全面控制結構,因而數據結構和程序控制流程可以清楚地是和乾淨地分離了。

APL環境稱a 工作區. 在工作區用戶能定義節目和數據,即。 數據值在節目之外也存在,并且用戶能操作數據,不用必要定義節目。 例如,

N \ leftarrow 4 \ 5 \ 6 \ 7

分配 傳染媒介 價值4 5 6 7到N;

N+4 \, \!

加4到所有價值(給8 9 10 11)并且打印他們(回歸價值沒被賦予在結尾的聲明到可變物使用任務箭頭 \ leftarrow 由APL口譯員顯示);

+/N \, \!

打印N的總和,即。 22.

用戶能保存工作區以所有價值、節目和施行狀態。

APL是知名的為對一套的它的使用非ASCII 是傳統算術和代數記法引伸的標誌。 有唯一字符名字對於 SIMD 向量函數是單程APL使能算法的緊湊公式化為數據變革例如計算 生活Conway的比賽 在一個代碼行(例子). 在幾乎APL的所有版本,用一個表示表達所有可計算函數,即,在一個代碼行是理論上可能的。

由於它濃縮的自然和非標準字符, APL有時被命名了「只讀語言一個APL節目罐頭在第一種感受喜歡解碼的「和讀書 埃及象形文字. 由於異常 字符集許多程序員用途特別 鍵盤 與APL keytops為創作APL代碼。 雖然有各種各樣的方式使用仅ASCII字符寫APL代碼[2]實踐上,它幾乎從未做。 (這也許被認為支持艾文森的論文 記法作為想法工具 [需要的引證].) 多數如果不所有現代實施使用標準鍵盤設計圖,與特別繪圖或 輸入方法編輯 對通入非ASCII字符。 歷史上, APL字體是特別的,與大寫斜體字字母符號和挺直數字和標誌。 多數供營商在一種習慣字體繼續顯示APL字符集。

APL的提倡者聲稱所謂的只讀代碼的例子幾乎不變地是惡劣的編程的實踐或新手差錯的例子,在所有語言可能發生。 APL的提倡者也聲稱他們是有生產力以APL比以更加常規的計算機語言,并且工作軟件可以實施在較少時間和與少量程序員比使用其他技術。 APL讓個體快速地解決更加堅硬的問題。 並且,當可以顯著減少,是緊湊和簡潔的, APL很好借自己到大規模軟件開發出現從很大數量的代碼行的複雜。 許多APL提倡者和實習者觀看編程在標準編程語言,例如 COBOL 并且 Java如比較繁瑣。 APL經常被找到時間對市場是重要的地方,例如與貿易的系統。

艾文森後設計了 J編程語言 哪些使用 ASCII合體字母 而不是特殊符號。

例子

更將要求的一個非常簡單例子幾個代碼行在多數在升序不非排列編程語言是採擷6 (從1-40)抽獎隨機數發生器,完成與保證重覆的數字和排序結果:

↑6 ?40

以下表示 排序 在矩陣存放的詞名單x根據詞長:

x [⍋X+.≠';]

以下作用「生活」,寫在Dyalog APL,採取一個布爾矩陣并且計算新的世代根據 生活Conway的比賽 :

在以下例子,也Dyalog,最重要分配某一HTML代碼到一易變的「txt」然後使用APL表示去除所有HTML標記,退回只許文字如最後線所顯示。

以下表示發現所有 質數 從1到R (假定索引起源的1)。 在時間和空間,演算是O (R ²)。

(∼R∈R°.×R) /R←1↓ιR

從右到左,這意味:

  1. ιR創造傳染媒介包含 整數 從1到R (如果R = 6在節目, ιR初是1 2 3 4 5 6)
  2. 投下這傳染媒介(↓作用)的第一個元素,即。 1. 如此1↓ιR是2 3 4 5 6
  3. 設置R到傳染媒介(←,任務原始)
  4. 引起 外積 R R乘的,即。 是的矩陣 乘法表 R由R (°.×作用)
  5. 建立傳染媒介長度和R一樣與1在每個地方,對應的數字在R在外積矩陣(∈,設置了包括作用),即。 0 0 1 0 1
  6. 邏輯上否定價值在傳染媒介(變動零到一个和一个到零) (∼,否定作用),即。 1 1 0 1 0
  7. 選擇項目在對應的元素是1的R (/作用),即。 2 3 5

演算

APL是獨特的在它可能進行複雜矩陣操作的速度。 例如,非常大矩陣增殖在比那些今天較弱的機器將需要仅幾秒鐘。 有這好處的技術和經濟原因:

  • 商業口譯員提供了高調整的線性代數庫例行程序。
  • 非常低解釋性天花板被招致了每排列沒有每元素。
  • APL響應時間與運行時間早期的優化編譯程序有利地比較了。
  • IBM提供了 微指令 協助為APL在一定數量的IBM/370計算機主機。

一張廣泛被援引的紙「APL機器」 (創作由菲爾・ Abrams)使APL利用瀰漫的神話永存 延遲求值 那裡演算實際上不會執行,直到結果是需要的然後仅那些演算未嚴密地需要。 一個明顯(和容易實施)延遲求值是 J傳染媒介 : 當一元 iota 在代碼, is is遇到被保留作為a 表示法 而不是立即被計算,因而節省某個時候並且記憶。

雖然這個技術未被推斷,它實現語言的最佳的生存機制: 不指定標量操作順序。 既使由X3J10最終規範化, APL那麼高度是 數據平行它一樣高效率地給語言implementors巨大自由日程表操作儘可能。 當計算機創新例如 高速緩衝存儲器SIMD 施行變得買得到, APL節目端起與少許額外努力花費的再優選低級細節。

口譯員

今天,多數APL語言活動發生在微軟視窗之下操作系統,以下一些活動 Linux, UnixMac OS. 比較一點APL活動在主機今天發生。

APLNow (以前APL2000)提供經營在Linux、Unix和窗口之下的一個先進的APL口譯員。 它支持窗口自動化,支持叫對操作系統和用戶定義的DLLs,有一個先進的APL文件系統,并且代表APL語言發展的當前層。 APL2000產品是先進的繼續 STSC『s成功的APL*Plus/PC和APL*Plus/386產品系列。

Dyalog APL 是經營在Linux、Unix和窗口之下的一個先進的APL口譯員。 Dyalog有包括新的進取的引伸到APL語言 面向對象 特點,許多語言改進,加上一致 namespace 為兩使用的模型它的微軟自動化接口,並且當地namespaces。 為窗口平臺, Dyalog APL提供緊的綜合化與微軟。網,加上有限的綜合化用微軟視覺演播室發展平臺。

IBM提供IBM APL2的版本為IBM AIX、Linux、Sun Solaris和窗口系統。 這個產品是為IBM計算機主機提供的APL2的繼續。 IBM APL2可爭論是最顯要的APL系統,為下套引伸提供一個堅實實施標準給語言,集中於被築巢的列陣。

MicroAPL被限制的提議 APLX一個全面貌特徵的64位口譯員為 Linux, 窗口和蘋果計算機公司 Mac OS 系統。

Soliton同提議聯繫在一起SAX口譯員(鋒利的APL為Unix)為Unix和Linux系統,是I.的更加進一步的發展。 P. 銳利同事的鋒利的APL產品。 不同於多數其他APL口譯員, 肯尼斯E。 艾文森 在鋒利的APL和SAX有一些影響就像被築巢的列陣被實施了。 幾乎其他APL實施跟隨了IBM設置的路線與APL2,因而一些重要細節在鋒利的APL與其他實施不同。

編輯

APL節目通常是 解釋 并且經常較少 編寫. 實際上,多數APL編譯器 翻譯 來源APL到底層語言例如 C留下有關個別機器的細節給底層編譯器。 APL節目的編輯是一個頻繁地被談論的題目在會議。 雖然某些更新的改進到APL語言例如被築巢的列陣使語言越來越難編寫, APL編輯想法今天仍然在發展中。

從前, APL編輯被認為手段達到執行速度可比較與其他主流語言,特別是在主機。 幾個APL編譯器達到了開發努力的成功,在APL上花費的比較一點的有些水平多年來雖則進完善編輯入機器代碼。

像案件,當移動APL節目從一個供營商的APL口譯員到另一個時, APL節目將不變地要求對他們的內容的變動。 根據編譯器,易變的聲明也許是需要的,將需要去除某些語言特色或被避免,或者將需要在某個方面清掃APL節目。 語言的有些特點,例如執行作用(表示評估者)和各種各樣 反射 并且 內省 作用從APL,例如能力退回作用的文本或實現一個新的作用從文本,不簡單地是實用的實施在機器代碼編輯。

一個商業編譯器給市場被帶來了 STSC 在80年代中期作為添加物對IBM的VSAPL程序產品。 不同於更加現代的APL編譯器,這個產品導致了在口譯員環境裡將仅執行的機器代碼,它不是可能消滅口譯員組分。 編譯器可能編寫許多標量和向量運算到機器代碼,但它將依靠APL口譯員的服務執行有些先進的作用,而不是試圖編寫他們。 然而,劇烈的加速特別是為沉重重申APL代碼發生了。

在同一時間附近,書 APL編譯器貓尾草Budd 出現於印刷品。 這本書詳述了APL譯者的建築,書面 C執行某些優化 圈融合 具體到數組語言的需要。 原文是APL像APL語言的幾個規則被改變了或放鬆了對許可證更加高效率的編輯。 譯者將散發然後被編寫和APL工作區的奔跑好的外部的C代碼。

今天,執行速度是較不重要的,并且許多普遍的語言被實施使用 虛擬機 -被解釋在運行時間的指示。 Burroughs或Unisys APLB 口譯員(1982)是使用動態增加編輯的一个導致代碼為一臺APL具體虛擬機。 當標識符改變了他們的功能意思,它正在進行中重新編譯。 除去除之外 解析 并且一些驗錯從主要施行道路,這樣編輯也簡化用戶定義的功能操作數重覆的詞條和出口。 這避免堆設定,并且記下為APL的固定操作員做的函數調用例如減少和其中每一。

尖頂研究APL編譯器,是可得到從Snake Island Research Inc. 尖頂編寫平的APL (ISO N8485)的一個子集入 一個功能數組語言以平行的語義學,和當前跑下 Linux. 尖頂引起的代碼用途 圈融合 并且列陣收縮,特別情形算法不一般可利用對口譯員(即,升級變更傳染媒介),達到表現的水平可比較與那 FORTRAN.

APLNext VisualAPL 系統是離開從一個常規APL系統VisualAPL是真實的。是充分地相互可操作與其他的淨語言 . 微軟。網 語言例如 VB.Net 并且 C#. VisualAPL是固有地面向對象和基於Unicode。 當VisualAPL合併大多遺產APL實施時特點, VisualAPL語言延伸遺產APL是。網服從。 VisualAPL在標準微軟視覺演播室IDE被主持,并且同樣地,祈求編輯有些相同與那其他。淨語言。 通過生產。淨共同語言執行時間的(CLR)代碼,它運用微軟及時編譯器(JIT)支持32位或64位硬件。 堅固表現加速結束遺產APL報告了,特別是當(使用任意)時強類型作用論據。

APL C# 譯者是可得到從隄道圖解系統。 這個產品被設計允許APL代碼,被翻譯為等效C#,完全地跑在APL環境外面。 隄道編譯器要求列陣作用一個實時程序庫。 一些加速,有時劇烈,是可看見的,但由於優化發生固有在微軟的中 . 網 框架。

術語

APL區分清楚的之間 作用 并且 操作員. 作用採取價值(可變物或常數或者表示)作為論據,并且結果退回價值。 操作員(aka 高次作用)作為功能作為相關的論據和回歸,導出函數結果。 例如「總和」作用通過應用「減少」操作員獲得於「加法」作用。 應用同一名減少操作員於「天花板」起作用(退回大二價值)創造一個獲得的「最大」作用,退回最大小組(傳染媒介)價值。 在J語言,艾文森用『作用』和『操作員』替代了期限『動詞』和『副詞』。

APL也辨認標誌或者標誌的一個固定的組合被建立入語言和代表的那些特點, 原始. 多數原始是作用或操作員。 編制程序APL主要是寫非原始作用和(在APL的有些版本)操作員的過程。 然而幾原始沒有認為作用和操作員,最引人註目地任務。

字符集

APL為它的一個獨特,非標準字符集的選擇總被批評了。 觀察學會它的一些通常適合熱心追隨者表示,有一些重量後邊 艾文森『記法使用的s想法產生變化。 在起點,有可能再生產APL字符設置這最普遍那些使用的少量終端設備 IBM Selectric 打印裝置與特別APL打印元素一起。 隨著時間的過去,以對優質圖形顯示和打印設備的普遍用途,主要消滅了APL字體式樣問題; 然而,進入APL字符的問題要求用途 輸入方法編輯 或特別鍵盤繪圖,也許挫敗初學者習慣了其他語言。 以普及 Unicode 標準,包含APL字符集,獲得必需的字體的問題似乎保持平衡走開。

從用戶的立場,他們代表的另外的字符可能視覺上給APL一特別高雅和concision不可能在其他語言,使用作用標誌歌訣。 當標誌連接起來入唯一大量,不用任何意見時,或它可能導致可笑程度複雜和unreadability,典型地。 或它可以是不合情理地困難的,并且費時然後進入以後編輯那些APL聲明。

APL標誌和鍵盤設計圖

注意同APL字符聯繫在一起的歌訣信件: 問號Q, 力量P, rhoR, 基本的價值B, 輸入N, 模數M 等等。 這在提供一的非APL鍵盤在一.的屏幕使它容易對英文報告人能鍵入APL有視覺反饋。 並且,標籤為標準鍵盤的附件被生產了,在鑰匙的前面或在上面他們。

一最新鍵盤圖,可適用為APL2和其他現代實施,是可利用的: 聯合佈局為窗口.

所有APL標誌存在 Unicode (雖然一些個APL產品可能不以此為特色) :

' ( ) + , - . /  :  ; < = >  ? [ ]
\ _ ¨ ¯ × ÷

另外的APL字符是可利用的 overstriking 一個字符在另。 例如, 日誌 標誌由overstriking轉移形成P 與轉移O. 這使改正差錯和編輯程序行複雜化。 這也許最後是早APL節目的原因能有有些密集的樣式-他們是難編輯。

,雖然呼籲,實際上沒有使用在上述桌裡顯示的許多overstrikes。 供營商介紹新的overstrikes,當他們導致了APL的版本為專門製作具體硬件,系統性能,文件系統,等等。 進一步,打印終端和早APL陰極射線終端是能顯示任意overstrikes,而是作為個人計算機迅速地替換了終端作為一個數據輸入的設備,支持現在提供作為的APL字符 APL字母發生器ROM 或顯示裝置回報的一個軟的字符集。 以窗口出現, APL字符被定義了作為另一種完全字體,因而被消滅的overstruck字符和標準字符之間的分別。

最新IBM終端,著名地 IBM 3270 顯示臺,有今天是為某些的依據現代APL鍵盤設計圖在使用中的一個供選擇鍵盤安排。 更好的終端,即顯示裝置而不是打印機,鼓勵了更好的整個銀幕的編輯的發展,有可測量的改善在生產力和節目可讀性。

用法

APL長期有一個小和慷慨激昂的用戶基地。 它是和仍然是普遍的在財政和保險應用,在模仿和在數學應用,經常解答頻繁地的地方改變或在標準語言產生過份複雜的地方。 APL用於各種各樣的上下文和為許多和變化的目的。 題為「引述方形字體的」時事通訊致力APL從70年代被出版了由協會的SIGAPL部分為計算機(引述方形字體是用於文字輸入和產品的APL字符的名字)。

主要由於它 中綴表示法 并且它的對互作用用計算機, APL的重點可以是一個理想的環境為迅速部署交互式 專門領域語言. 儘管非標準字符出現在APL字符集,它為在APL實施的一種專門領域語言的用戶是可能的寫單一地包括詞、數字和熟悉的標點的簡單的節目(或劇本)。 直到一樣後像80年代中期, APL 分時 供營商提供了以專門領域語言的形式被提供的應用。 在 i. P. 鋒利 分時系統,工作區叫 39魔術 對財政和航空公司數據的被提供的通入加上老練(為時間)註標和報告,以一種專門領域語言的形式。 另一個例子是GRAPHPAK工作區供應以IBM的APL2; APL2和GRAPHPAK的示範版本可以為窗口被下載。

APL也用於許多 metaprogramming 應用。 時常變化的特定外部數據, APL節目用於組成部分或完成其他語言把寫如入的代碼的部分例如FORTRAN、COBOL或者Java。 一種應用使用APL引起一個堅固線性規劃模型的FORTRAN代碼。 同樣地, FORTRAN代碼認為是太大以至於不能由一個或小小組個體舒適地瞭解。 然而,以這種方法,定期維護沒有擺在障礙。 使用了相似的方法實變桌維護了APL的外部可能立即被變換成執行必要的實變計算的規模可觀的面向商業的通用程序的地方。 早先要求幾個工日,實際消滅了的繁瑣的步,即對一個長的面向商業的通用程序的修改。 在最後散發Java代碼的相似的事做了。

興趣在APL從80年代平穩地下降了。 這部份地歸結於缺乏遷移道路從performant計算機主機實施到早便宜的個人計算機的選擇和高生產力終端用戶計算的工具的可及性例如 Microsoft Excel 并且 微軟通入. 這些是適當的平臺為什麼在70年代和80年代可以是計算機主機APL應用。 一些APL用戶移居對 J編程語言提供更加先進的特點。 最後,衰落也是應得物一部分到成長 MATLAB, GNU八音度Scilab. 這些科學計算的針對排列的平臺提供交互計算經驗相似與APL,但更類似常規編程語言例如FORTRAN,并且使用標準ASCII。

仍然這種衰落, APL發現在某些領域繼續了用途,例如會計研究(斯坦福會計PhD要求)

標準化

APL由規範化了 ANSI 工作組 X3J10和 ISO/IEC 聯合技術委員會1小組委員會22工作組3。 核心APL語言在ISO 8485:1989中指定,并且延長的APL語言在ISO/IEC 13751:2001指定。

行情

  • 「APL,您在四個字符能寫節目模仿拖曳卡片組然後成交他們對幾個球員,什么都,其中出現在一個標準鍵盤」。 指定的大衛
  • 「APL是差錯,維持到完美。 它是未來的語言為過去的編程技術: 它創造編制程序二賴子的新一代。「 Edsger Dijkstra, 1968
Rho, rho, X rho
總合計1。
Rho是維度; rho rho,等級。
APL是樂趣!
  • 「做生意這個方式是很有生產力的它傳播了像野火。 當實用人民發現了的時候發生什麼; APL是很重要的部分的怎樣IBM經營了它的業務它不可能可能被連根拔。 眼球充血研究員生產了一個賺錢人。「邁克爾S。 Montalbano 1982年(參見 APL的一個個人來歷)
  • 作為一部分,以下可笑的押韻被散布了 時運 節目在許多Unix設施。
'Tis每位程序員夢想
在他的生活完成之前,
寫APL三條線
并且做事奔跑。

參見

參考

  1. ^ 拉里養殖(2006 8月)。 "怎麼我們有APL \ 1130年". 傳染媒介(英國的APL協會) 22 (3). ISSN 0955-1433. 
  2. ^ 裝飾胸襟,李, APL意譯A名單策劃, 1993

參見

外部鏈接

Wikimedia共同性有媒介與有關:
The original article is from Wikipedia. To view the original article please click here.
Creative Commons Licence