「software transactional dbm」(仮)
まだ全然進んでない。
やりたい事
- 「Gauche上で動作する」、「(任意の)dbm(もしくは他のkey/value store)上に」、「stmを実装する」。
- これが「そもそも可能なのか」、或いは「制限はあるが可能だとして、どのような制限があるのか」を調べる。
- その結果、実装する価値があるようなら、実際に作る。
- 或いは、実装する価値があるかどうか確認する為に、実際に作る。
やった事/諦めた事
- stmの元論文を流し読みした
- 概要とインターフェースだけ理解した
- どういう実装になっているのかは理解できなかった
- 図とかを見る限りでは、cons cellっぽいものを組み合わせて、djb式のファイルのatomicな更新みたいな感じの動きをするものっぽそうな気はする
- 続きはあとで
疑問点
- dbm上にstmを実装するよりも、普通にstmを実装して、オンメモリなストレージプロセスを作って(適切なタイミングでローカルのdbm等にデータを保存する)、それに対して適当なプロトコルで通信した方が楽なのでは?
未整理まとめ
- retryはcall/cc(もしくは部分継続)による実装が良さそう?
参考リンク
最終更新 : 2009/07/15 13:30:13 JST