■
var unifier = Unifier.new_unifier(); var v1 = unifier.gen_var(`v, function(v) { debug_tree(v); }); var v2 = unifier.gen_var(`v, function(v) { debug_tree(v); }); unifier.push( v2 ); unifier.push( v1 ); unifier.unify( ); unifier.push( types.integer_type_node ); unifier.unify();
このぐらいは動く。単一化ってそんなに難しくないのかも。90行ぐらいで書けた。
■
いや、嘘。コールバックがちゃんと呼ばれない場合が。もうちょっと考える。
■
あ、うん。大丈夫。意外とあっさり終わってしまった。あとは、レコードな型の推論なんだけど、それはこのレイヤでやるものじゃないような気がしてきた。
let a = { nanika: 4, hogehoge: 80 }
うーん、そもそもこのぐらいだったら、型を明示しないといけないようにしてもいいような気がするんだけど。ここで型推論したとしても、タイプ数が変わる以上のメリットは無いはず。もうちょっと考える。いや、僕の中では無くてもいいほうでほぼ決定なんだけど。いや、タイプ数が変わるのがメリットにならないんだったら、そもそも型推論がいらないのでは?うーん。わからん。いや、上のを実装するのは多分非常に面倒だと思うんだ。
あと、昨日はどうでもいい間違いをしてたのでこっそり修正しておく。
■
screentime動かしてるとやけにスワップ回数増えるなー、と思ってたら、大量にリークしてたので修正。おいおい。
http://morihyphen.hp.infoseek.co.jp/files/screentime.tar.gz
ついでに、RGB565対応していただいたのを追加。
あと、ガラス張りのコンピュータ生活はそれなりに効果があるように感じるので、僕は露出癖があるのかもしれない。
■
オゥ!デバッグ用に入れたコード残したまんまだったよ。修正。
http://morihyphen.hp.infoseek.co.jp/files/screentime.tar.gz
■
あー、あれ。あれなんだよ。「カラオケ=楽しいもの」っていうのは多くの人の同意があるから、「カラオケの何が楽しいのかわからん」っていう意見はつぶされてしまうんだよな。
「楽しくないのは、面白さを理解してないだけだよ!経験すれば楽しくなってくるって」っていう流れになってしまう。
たとえば、これが、「今から、一時間くらい弾幕鑑賞会でもやるか!!」ってなって、「いや、シューティングはわからんから遠慮しとく」って断わったときに、「いーやいや!!君達は弾幕の美しさ、素晴らしさが理解できてないだけだって!!経験さえすれば、弾幕のすばらしさが理解できるはずだよ。ほら、この、大往生の3ボスの発狂弾幕、ほら、これね、別に密度が高いわけじゃないんだけど、何回練習しても安定しないんだよね。ほら、この、単純な弾の中に、ビットを織り混ぜることで、工夫がしてあるんだよね」とか言われたら引くだろ!!帰りたいとか思うだろ!!君達はそういうことをやってるの。
ほんとにカラオケは何が楽しいのか理解できないんです!!わかってあげて!!
いや、そもそも、3ボス発狂がいまだに安定しないのが問題だと思う。