この前作ったkakahiaka.jsを、たまに簡単なWebViewのアプリとかで使ってみてた。小回りが利いていい感じ。 コンセプトはPastaと全く一緒で、関数ベースのMVCをやるとしたらどうなるかっていうのがテーマなんだけど、Pastaは今となってはAPIがださいのでもうちょい関数型言語、というかLispのライブラリっぽいAPIにして作り直したのがkakahiaka。ちなみにkakahiakaはハワイ語で朝って意味です。 OOみたいに状態がそこら中に散らばって今何が起きているのかわからないっていうのはもちろん問題なんだけど、FRPみたいに状態をストリームの中に隠しちゃうのも僕には扱いづらかった。 Pastaとkakahiakaはアプリの状態をファーストクラスにしてしまうことで、アプリの状態の把握とか永続化とか復元とかロールバックを簡単にできるようにしている。 サンプルコード: var K