06 月 30 日(Fri)のアレゲメモ

Shibuya.js: ActionScript でクロージャ、継続渡し

Shibuya.js Technical Talk #2 で、 発表をさせていただきました。ありがとうございました。 5 分の中にいろいろ詰め込もうとしたら、 訳の分からない発表になってしまいました。 発表者やスタッフのみなさんお疲れさまでしたー。


今回の発表では、 まず ActionScript(JavaScript)でのクロージャと継続渡しスタイルの実装方法の説明をし、 その後、 A* アルゴリズムというグラフの最短経路探索アルゴリズムを例にとって、 クロージャや継続渡しスタイルの便利さをアピールしようとしました。

発表資料

当日使った発表資料をおいておきます。

Flash 8 を持っていれば、次の Fla ファイルを使ってデモを試すことが出来ます。 (Flash 8 の体験版 でも OK です。)

おまけ

デモを作成するにあたって、 まずは Scheme で実装し、 それがきちんと動いたら ActionScript に書き直すという工程をとりました。 Scheme だと末尾再帰を使っている限りは、 再帰呼び出しの深さには制限がないし、 はやりグラフの探索のようなアルゴリズムは Scheme で書いた方が直感的に書ける気がします。

とはいっても、 JavaScript も動的でレキシカルスコープをもつ言語なので、 Scheme のコードとほとんど同じ分量で記述することができました。

Comments

最終更新: 2006 年 06 月 30 日 14:47