2008-03-06
Scala Ators
Event-Based Programming without Inversion of Control
- receive の semantics は "never return normaly"
- 戻り値の型を Nothing にしてコンパイラに教える
- 例外で抜けるのは OK. 実際これを使う. -> Jetty かよ!
- 縛りきつすぎね? -> そうでもないと主張してるけどねー...
- continuation = receive の引数である function object.
- 結局 ruby みたいな brace-style closure があるからできる芸当だよなー...
- ブロッキングの扱い: ブロックしてたらスレッドを切り離す
- 別の paper に出てくる 受信つき send (?!) は使えないよなこれだと...いや, return するのは closure に戻るのか...
Actors that Unify Threads and Events
- Channel という抽象: 型つき messaging (とか.)
- 複数 channel からの listen を pattern match する: 各 channel は異る型を持つ.
- http://en.wikipedia.org/wiki/Actor_model 日本語もある
- http://theron.ashtonmason.net/ C++ による実装. ゴツすぎ.
productivity hour
今日は外部から automation を叩く路線を試すぜ.
VS Automation に挫折
DTE.ExecuteCommand の挙動がようわからん. "ClassViewContextMenus.ClassViewProject.Build" してもすぐ返ってきて動いてなかったり. んー. automation 路線は思ったより厳しいなあ.