2008年 02月 02日

Requiem for a rendering engine

Requiem for... までみたところで Innocence がうかぶアート厨

指にささくれをつくってはとり、つくってはとり、という神経質な癖があって嫌だ。その神経質さも嫌だけど、なによりキーボードがよごれるのが嫌だ。

gerry++

2008年 02月 01日

citrus, UriInformation の分離

いま mixi とか plagger の db から情報とってくるとかが一つのファイルにつっこまれてて非常にダサイので、どうにかする。たぶん UriInformation の中でさらに Plugins インスタンスをもつようになる。

plugins/uri_handlers/{mixi,plagger,image,ftp,http,urn,amazon}

これらは、実行順を持っていて、あるプラグインで処理が確定したら後続のプラグインは実行されない。


ということをやりたいけど眠くてしかたないのでねる……テストどうやってかこう。

リロード可能なぷらぎん

もっといい実装ないかなぁ……

今の方法

  • 匿名モジュールでロード
    • プラギンクラスは、そのファイルとしてはトップレベルの定義になる module::Foobar
  • グローバルな環境からこのクラスにアクセスには困難 (匿名モジュールなので
  • ロードする環境がいつも必ず別々になるのでリロードのときに問題がおこりにくい (とおもう)
  • プラギンがさらにプラギン機構をもとうとするとめんどい。(ベースクラスも匿名モジュール内に入るので、直接参照できず、class_eval とかでロードする必要がある)

つけかえする方法

  • グローバルな名前空間にロード
    • プラギンクラスは Plugin::Foobar みたいになる
  • どこからでもアクセスできる
  • インスタンス化のタイミングとか参照状況によってはリロードしても GC きかない可能性があるかも (デバッグむずい)
  • リロードするときは remove_const / const_set
  • 継承とか依存があるときはそれらもよみなおさないと前の参照がのこる
2008年 01月 31日

はてダ

その場編集つかってたのに設定戻ってしまった。

向日葵 - Syrup16g

すごいうただなぁ…… ちなみに最後のアルバムはまだ買ってない。

日記に文章を書いては消し書いては消し、まとまらない。いうべきではない気がする。(社会的な意味じゃなくて、個人的な意味で、今パブリックにすべきではない感じ)

ミナソコ - BURGER NUDS

やっぱり、この唄をきいて浮かぶ風景は、完璧すぎる。