NIL (プログラミング言語)
表示
登場時期 | 1979年 |
---|---|
設計者 | Jon L White, Glenn S. Burke |
最終リリース | 0.286/ 1984年1月 |
影響を受けた言語 | Lisp, Maclisp |
影響を与えた言語 | Common Lisp, T |
プログラミング言語 | Lisp, VAXアセンブリ言語 |
プラットフォーム | VMS |
関連言語 | Lisp, Common Lisp |
NIL (New Implementation of LISP)はマサチューセッツ工科大学で開発されたLisp の方言である。
1970年代後半にDEC社の32ビットマシンであるVAXコンピューターで稼動するMaclispの後継言語として開発が始まった。
Maclispとの互換性を維持しつつVAXの高速性を活かし、大規模なアプリケーションのより高速な実行を目指した。
プロジェクトは開発当初は Jon L Whiteが主導し、後に Glen S Burkeが主導開発者となったが、後に擡頭してくるCommon Lispの仕様策定と合流し、Common Lispに影響を与えつつ、NIL自体もCommon Lispに適合していった。
言語拡張および開発環境
[編集]- オブジェクト指向システム: Fravors
- MIT Lispマシン風のエラーハンドリングシステム
- Emacs互換エディタ: Steve (実装言語はLisp)
商用化
[編集]1985年にはImpediment社によりMicroVAX IIで稼動するCommon Lisp処理系として商用化されている。[1] 日本国内では、住友商事が扱うMicroVAX IIのパッケージの一つとして販売されていた。
逸話
[編集]Common Lispはレキシカルスコープを採用するにあたって、既にレキシカルスコープを採用していたNILに倣ったとされる[2]
Richard SoleyがNILプロジェクト用にNILEというEmacs風エディタを開発していたという逸話がEmacsの歴史として伝えられている[3]。なお、上述のようにNILの組み込みエディタはSteveという別のEmacs実装であった。
脚注
[編集]- ^ https://onlinelibrary.wiley.com/doi/abs/10.1111/j.1468-0394.1985.tb00482.x
- ^ Rodney A. Brooks, Richard P. Gabriel, Guy L. Steele Jr. An optimizing compiler for a lexically scoped LISP. Proceedings of the 1982 Symposium on Compiler Construction, Boston, June 1982, pages 261-275. ACM DL
- ^ https://www.researchgate.net/publication/34632285_The_development_of_a_general_purpose_editing_system_the_Nile_editor
文献
[編集]- Brent T. Hailpern, Bruce L. Hitson. S-1 Architecture Manual. Technical Report 161 (STAN-CS-79-715), Department of Electrical Engineering, Stanford University, January 1979.
- G. Burke. Introduction to NIL. Laboratory for Computer Science, Massachusetts Institute of Technology, March 1983.
- G.S. Burke, G.J. Carrette, C.R. Eliot. NIL Notes for Release 0.259, Laboratory for Computer Science, Massachusetts Institute of Technology, June 1983.
- G.S. Burke, G.J. Carrette, C. R. Eliot. NIL Reference Manual. Report MIT/LCS/TR-311, Laboratory for Computer Science, Massachusetts Institute of Technology, Cambridge, Massachusetts, 1983.
論文
[編集]- Steven Correll. S-1 uniprocessor architecture (sma-4). Volume I, Chapter 4, The S-1 Project 1979 Annual Report, Lawrence Livermore Laboratory, Livermore, California, 1979.
- Jon L. White. Nil: A perspective. Proceedings of 1979 Macsyma Users' Conference, Washington, D.C., June 1979.
- Rodney A. Brooks, Richard P. Gabriel, Guy L. Steele Jr. S-1 Common Lisp Implementation. Proceedings of the 1982 ACM symposium on LISP and functional programming, Pittsburgh, 1982, pages 108 – 113. ACM DL
- Rodney A. Brooks, Richard P. Gabriel, Guy L. Steele Jr. An optimizing compiler for a lexically scoped LISP. Proceedings of the 1982 Symposium on Compiler Construction, Boston, June 1982, pages 261-275. ACM DL
- Mark Smotherman. S-1 Supercomputer (1975–1988). Web site, last updated April 24, 2004. http://www.cs.clemson.edu/~mark/s1.html