热门问题
时间线
聊天
视角
POP-2
来自维基百科,自由的百科全书
Remove ads
POP-2(也稱為POP2,Package for Online Programming:在線編程包),是Robin Popplestone和Rod Burstall在大約1970年於愛丁堡大學開發的編程語言,起源於更早的語言POP-1(Robin Popplestone在1968年開發,最初叫做COWSEL)[1]。它根源於很多來源:LISP和ALGOL 60語言,和來自Peter J. Landin的理論上的想法。它使用增量編譯器,這給與它某些解釋型語言的靈活性,包括允許在運行時間定義新函數,和在程序運行時修改函數定義(二者都是動態編譯的特徵),而沒有解釋型語言的開銷。
Remove ads
影響
POP-2是具有動態綁定和動態(運行時間)確定類型的函數式語言,它的語法是ALGOL風格的,而它的特徵受到了Strachey和Landin工作的重大影響。它有一些顯著特徵,比如在部份應用中具有的一種形式的函數閉包,和受到Landin的J算子啟發的一種逃脫機制(jumpout
函數),它扮演了與Lisp中的catch
/throw
類似的角色。
POP-2對ML的設計有着重要的影響,這來自它的記錄結構,這裡定義了數據構造子和並以字段名字作為選擇子,和它的section ... endsection
指令,這是提供了初步模塊性支持的一種簡單名字空間管理機制,ML後來把它替代為local ... in ... end
。[2]
參見
- POP-11編程語言
- Poplog編程環境
引用
參考書目
外部連結
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads