Lisp is EVERYWHERE
ハワイでソフトウェアコンサルタントしている
主に助っ人プログラマ!
1996年 米国子会社
次世代機向け技術研究
1997年 シーグラフ
2000年 ファイナルファンタジーリアルタイムデモ(シーングラフのスクリプトをScame)
2001年
FFのアーティストのアセットをトラッキングしてパイプラインを流す
ComonLispでつくり、修正していった
2002年 独立 Gaucheをコア技術
ネットワークがらみ、アプリケーション層の下あたり
俳優業は年に1、2回でている
→会場アンケート仕事でLispを使っている人は少ない
Lispはいろいろな有名人がすばらしい実装だと取り上げている
50年Fortran、Cobol、Lispが生き残っている
Lispだけでたくさんの方言ができている
リスト処理ライブラリだった、evalにリスプ処理を入れたら動いてしまった。
プログラムの2面性
機会に指示をする手順書
意味の記述・定義Lispプログラムを解釈する Lispプログラム
Lispで記述された意味を解釈する 。。。
超循環構造。メタサークラー
→この扉を開いたところになる
メタになると何がうれしいのか
操作対象だけではなく、操作主体が操作できるようになる
C言語などは言語のの制限があるが、Lispなら制限があったらチートして世界の制限を書き換えてしまえばいい
Real Macro Metaprogramming on C
抽象化が低い
→Lispを組み込む
→記述はC
→lsを書き直したら、コードは半分になる
一人の見れるコードは限界があるので抽象化する必要がある
プログラム+入力データ=出力
メタプログラム+プログラム仕様=プログラム
メタプログラム+メタプログラム仕様=メタプログラム
メタプログラムをうまく選択するとコードが減らせる
20000行でOS、コンパイラ、アプリケーションを書く
1000行でネイティブコンパイラを書いている
2段階の法則はオブジェクトでも適応される
クラス→インスタンス
メタクラス→クラス
メタクラス→メタクラス
メタオブジェクトプロトコル
オブジェクト自身を拡張できる
AOP
外枠と内枠のコンパチビリティー
不完全なメタ
C++テンプレート→特化されたソース→オブジェクトコード
Schemeのマクロ→循環が完成するまで30年かかっている
生活の中のメタ構造
シェイクスピア
→劇中劇
職人ロミオ→劇中の物語(外から職人をみるとおかしい)→舞台を見ているひ
私たちを見ている何かが存在するのでは何かがいるのではないか?
→神、第三者
物理法則をチートではかえられない
→世の中に縛られているルールは変えられるのではないか。自分で思い込んでいるだけではないのか?
あらゆるところに、超循環があるのではなか。
トーク
土佐先生の話に回帰しているのではないか。
裏テーマとして
わけわからないなというのが1つはないといけない。