Scheme:組込み・リアルタイム用処理系

Scheme:組込み・リアルタイム用処理系

組込み and/or リアルタイム処理を目指したScheme/Lisp処理系を語ってみる。 (「組込み」と「リアルタイム」は直交する概念だろうけど、 なんとなく共通部分が多そうなのでまとめてみた。)


実装

「組込み」and/or「リアルタイム」を掲げてる処理系

BIT

Danny Dube氏の組込み用 実装。 size-optimizeなので速度はそれほど出ない。8bit CPU 68HC11等が ターゲット。memory efficientなGC実装が特徴。

L

Rodney Brooksらがロボットの制御に使っているLisp。 リアルタイムかつ細かいプロセスを大量に作って並行に処理できるらしい。 http://citeseer.nj.nec.com/32508.html

Lego/Scheme Compiler

snow:Lego MindStormsを制御するコードを作成するコンパイラです。 http://www.cs.indiana.edu/~mtwagner/legoscheme/

GOOL/GOAL

Naughty Dogがゲーム用に開発したLisp。 GOOLはPSの「クラッシュバンディクー」でイベント、アニメーションを 記述するために使われた。 GOALはPS2の「Jak and Daxter」の開発に使われた。 確かGOOLはイベントエンジンの解釈するバイトコードにコンパイルされるんだが、 GOALの方はPS2のネイティブコードへとコンパイルされ、ゲームエンジンそのものが GOALで記述されている、と聞いた。メモリアクセスのクロック単位でのタイミング 合わせなど非常にシビアな調整にもGOALは役に立ったとか。 (でも多分、ランタイムのメモリアロケーションとかはGCではなくプログラマが 緻密に管理してると思う。PS2でGCにバスを取られると痛いから)


要素技術


関連資料


議論、コメント


Last modified : 2013/04/28 11:05:27 UTC