ARP resolv


解決の開始と終了を継続を使って分離。skymoshではスレッドの生成処理が重い*1ため、1リクエスト1スレッドにして処理をpendingするよりはこのような実装が望ましい。こういうケースでは部分継続を使いたいがR6RSに相当するプリミティブが無いのでcall/ccを使って手で実装している。。
もうちょっと要求を整理してスマートに実装したいところ。
recvとcntlでスレッドを分離している。現在のところ、mainスレッドは単に休眠しているが、そのうちportによるインターフェースを提供する予定。

*1:R6RSライブラリを初期化する都合上moshの起動時間と同じだけの時間、つまりスレッド環境下では数秒掛かる