土曜日
朝早起きしてid:propellaの山宮さんを空港に送ります。コーヒーをご馳走になりました。飛行機は出発が遅れていましたが、無事に帰れたようでなによりです。
South Bayのいくつかのポイントに行き、帰宅。そして睡眠。
OOPSLA 2005
今年のOOPSLAはSan Diego。Anaheim、Vancouverの後でまた西海岸となかなか便利である。すでにドライブしていく予定を立てて、ホテルも参加登録もしてしまった。Special EventはSan Diego Zooで楽しそうなので、追加のチケットも買った。
2003年のAnaheimのときはPractitioners Reportで一応発表をしたのだが、そのときの原稿がディスククラッシュで失われてしまっていることにいまさら驚きを覚えている私ではある。しかし、Johnに校正を頼んだやつがメールの中から出てきてほっとしている私ではある。
懸案はCroquetが間に合うかどうかだなー。
Squeakland 05
id:korakuriderさんがいろいろ調べてくれているやつに対処がなかなかできなくてすみません。時間を見つけてやりたいと思っているのですが...
HyperCard
Bill AtkinsonがHyperCardを作っているときに、最初はスタックの中ではひとつのバックグラウンドしか使えないようになっていた。が、「いろいろな人」が複数のバックグラウンドが使えないと不便だよ、と言ったのだが、Billはその変更をするには何ヶ月もかかりそうだから、と言って困っていた。でも、Tedが「バックグラウンドをカードの一種にすれば良いんだよ」と言ったところ、Billはああそうか、と言って数日でその変更を実装した、というエピソードがあるそうである。simplicityとgeneralityに関する良い逸話かもしれん。Bill AtkinsonはUCSD出身だけに強いPascalファンで、HyperCardもObject Pascalで書かれていたそうである。が、余り内部的にはオブジェクト指向的ではなかったので、カラー化などが難しかった原因となったらしい。
スタックの再生しかできないHyperCardでコードを書けるようにするために、フィールドの中身をHyperTalkのコードとしてスタックに追加する、というカードを作っておいて、そのフィールドを編集できるようにしたスタックを見せてくれた。内部実装はオブジェクト指向的ではなくても、メタの概念をエンドユーザーにきれいに見せているところがすばらしいと思われる。