LISPUSER

LISPMEMOLisp isn't a language, it's a building material. -- Alan Kay

(top)  (memo)  (rss)

Lisp Machine のマニュアル

Lisp マシンのマニュアルが HyperText 形式で公開されています!!

http://bknr.net/static/lmman/frontpage.html

現在の dynamic-extent による最適化と同等の機能が組み込まれています.ヒー プ上ではなくスタック上にリストを確保する事により GC の手間を省く機能の ようです.

http://bknr.net/static/lmman/fd-con.xml#stack-list-section

コルーチンやジェネレーターなどが当時からメジャーな手法だった事がわかり ます.この機能は Common Lisp にないですねぇ.

http://bknr.net/static/lmman/fd-sg.xml#Resuming%20of%20Stack%20Groups-section

当時の LOOP マクロ!!

http://bknr.net/static/lmman/looptm.xml

CLOS に影響を与えたオブジェクトシステム FLAVORS !! 聞いたことはありま したが,こーゆう感じだったんですねー.

http://bknr.net/static/lmman/flavor.xml

(send オブジェクト メッセージ) という形式ですが,すでに多重継承や総 称関数など現代に通じる機能が見られますね.(Allegro Common Lisp には後 方互換のために flavors がまだ附属しています)

Lisp マシンのネットワーク機能 Chaosnet です.当時は今のように標準化され た規格がなく,ごちゃまぜの複数規格が混沌としていたため,この名前が付い たとか聞いたことがあります.

http://bknr.net/static/lmman/chaos.xml

その他便利なユーティリティ関数.documentation, ed, dribble などは Common Lisp 規格にありますね.その他の metering や who-call などは処理 系の拡張ライブラリの定番ですね.

http://bknr.net/static/lmman/fd-hac.xml

ほかにもコンパイラの章には現代のコンパイラマクロの前身のような機能や開 発環境との連携を前提とした機能など Lisp Machine ならではの機能が記述さ れています.並列処理用機能 Processes などは現代の各種処理系の MultiProcessing パッケージに似ています.How To Read Assembly Language なんて章があるあたりハッカー精神を感じますね.

posted: 2006/08/17 19:30 | permanent link to this entry | Tags: LISP

(top)  (memo)  (rss)