はじめてのSkype
うちのDuncan君がSkypeが使えるというので、初めて使ってみた。すげーよ。時差13時間の距離を超えて、ボストンと日本の間でフツーに会話ができる1。AirH”128kbpsのコネクションでは、やや難があったけど。無料通話おそるべし。2人してskypeで会話しつつIMでもキーボードを叩くというアレゲな光景が続いた2。
skypeは普通の電話と違って、つなぎっぱなしというか話しっぱなしでも全然困らない。割り込み通話で特殊な操作をする必要も無いだろう。かけ直したところで料金が余計にかかるわけでもないのだから。
オフィスに置いてあったFAXがPCサーバに置き換えられていったように、電話のいくつかもPCみたいなものに置き換わる日が来るんだろうか。技術的には単なる音声IMだから以前からあったものだとはいえ、将来の楽しみなP2Pアプリケーションではある。
conferences
TechEdは行かないし、以前ちょっとだけ行ってみたいと書いていたSVGOpen2004も行きません(ていうか昨日締め切ったはず)。途中に予定入ってるし、遊びで参加できる参加費ではなかったですなぁ。そんかし、別のカンファレンスに行くかもしれない。予定は未定。
XQuery implementation in progress
1日でComparisonExpressionsとArithmeticExpressionsとGroupExpressionをやっつけた。これで全然出来ていない式はvalidate()とordered(), unordered()だけだ。関数とExpressionsOnStaticTyping (typeswitchとか)はすぐに例外を投げるし、positional predicateはEBVと勘違いしてしまうし、他にもAttributeValueTemplateとかDoubleLiteralとかNamespaceConstructorとか解析できていないし、FLWORは上手く結果が返ってこないし、関数はたくさん実装されていないけど。今までは出来ている部分の方が少なかったけど、↑ではもう出来ていない部分を列挙するような書き方になっている。
実装を見直して、設計を落ち着かせて、大部分を動作可能にするには、やっぱもうひと月は必要だろう。ていうか、それをやるためにはSystem.Xml.Schemaの一部を再設計しなければならない。それに、XQueryにはフリーで公開されているテストが存在しないので(テストが有償で販売されているという有様)、自分で書き上げにゃならないだろう。しかし、Mono 1.2が登場する時には、かなりの部分が出来上がっている自信がある。
その後に、CLIランタイムとXQueryコンパイラの辻褄を合わせるという、あまりやりたくない仕事が残っている。この辺はXSLTをやっつけたBen Maurerが「たぶんDynamicMethodとか使えば、高速なものが出来ると思うんだよね〜」と、ちょっと興味を示していたので、もう丸投げしちゃうかも…と言いたいところだけど、丸投げするには下地になっているコードがヘチョいと困るので、その辺も少し面倒を見ないといけない。ていうか、System.Reflection.Emitって真面目に見たこと一度もないんですけど…
XQueryをMono 1.2にあえて間に合わせるような作業をする予定は、今のところは無い。もしかしたらXML 2.0を「見せつける」ためにやるかもしれないけど。