なにごとにつけても既得権を奪うのは怒りを誘う。
Python でもメソッドを後から追加できることを知る。
ここのところビデオが溜りがちだったのだが、 ようやく先週のぶんにたどり着く。
で、奥村先生の TeX の授業1回目。
そーか。「TeX を使ってみようのアクセス数」の推移が書いてあるのは授業で紹介したことによる影響が見えるという話なのだろうな。
続けて第2回も見る。jarticle と jsarticle の比較はなかなか面白かった。
来週は ps の話? そんなわけがない、とシラバスを見直してみると... あぁ、図の話なわけね。
それはそれとして放送大学のシラバスはどーやったら参照できるかな...
アレゲータ 0
隔靴痛痒 7
おや、7件しかない? 間違ってる?
perl のハフマンコーディングという話はどこに書いてあるだろう?
... Apocalypse [345] にちょっと載ってるか。
vim では内部エンコーディングが UTF-8 か EUC-JP かで 端末における文字幅の推定が変化することに気がつく。
feature freeze とは何か?
N時間かけてメールを書いたとしよう。
それは N * 時給 の価値があるだろうか?
仮にもし自分が書いているメールみたいなのをそれだけの金額を出せば買えるとして、買いたいかというと... うぅむ。
いわずもがな 9320 いわずもなが 152 いわずがもな 19 いわずがなも 3 いわずながも 1 いわずなもが 0
締切ドリブン 7 締め切りドリブン 1 しめきりドリブン 0 〆切ドリブン 1
世の中には間違ってるものも多々あるわけだが、 閉じタグがあったら開きタグもあるという予想はどの程度正しいだろうか?
FitNesse: The fully integrated standalone wiki, and acceptance testing framework.
今週は締め切りがふたつ。
\baselineskip の必殺技が使える(と思う)のがひとつと、つかえないのがひとつ。
来週締め切りの作業に手をつける。
ひさしぶりに perl を download する。
grep, grep, ...
昨日手をつけはじめたのはさっさと切り上げて終らせる。
明確な締め切りがないもののかなり長い間放り出していた作業に手をつけるべく Microsoft Word とたわむれる。
適当に切り上げる。
残りは提出したものの ack 以降の反応がみられないひとつだけか。
文字列の先頭を切り落としていくときの効率を調べてみる。
100.times {|i| str = "x" * (i * 1000) t1 = Time.now until str.empty? /\A./ =~ str str = $' end t2 = Time.now p t2 - t1 }
これはあからさまに線形。
100.times {|i| str = "x" * (i * 1000) t1 = Time.now until str.empty? str = str[1..-1] end t2 = Time.now p t2 - t1 }
これも線形。
empty = '' 100.times {|i| str = "x" * (i * 1000) t1 = Time.now until str.empty? str[0,1] = empty end t2 = Time.now p t2 - t1 }
これは非線形。予想としてはどーせ O(n^2) のはずなので、 gnuplot で fit して確かめてみる。
gnuplot> f(x) = a*x**b gnuplot> fit f(x) 'z' via a, b ... gnuplot> print a 0.000507507116574283 gnuplot> print b 1.94471195053459 gnuplot> plot 'z', f(x)
まぁ、予想通り指数の b は 1.94 と 2 に近いものになる。
ついに、あやしげな HTML パーザを書いてしまう。
とりあえずタイトルの抽出をしてみる。
頭をひねりまくって「あやしげな HTML」をある程度扱えるようにする。
まぁ、タグの対が互い違いになってるのは無理だけど、 ネストしてる限りはどうにかなる程度。 EMPTY なのになぜが中身があるのは大丈夫。
らくらく 192000 くらくら 72500
世の中にはくらくらすることよりもらくらくなことのほうが 2.65倍くらい多いらしい。 なんともしあわせなことである。
うぅむ。メールが受け取れない...
えーと、温泉?
(アンテナの) HTML 中の興味の無いところを取り除く処理も Tidy から自前の HTML パーザに切替える。
Setuid Demystified, Hao Chen, David Wagner, and Drew Dean.
うぅむ。POSIX の appropriate privileges ってのは implementation-defined で、 BSD の setuid の挙動は appropriate privileges を uid が 0 かどうかでない解釈 とすることによって POSIX に従っていることになるというわけか。
HTML では属性値の省略ができることがある... と、数日前まで思ってたのだが、 実は省略可能なのは属性名であって、属性値ではないのだった。
で、省略された属性名を得るためには DTD に書いてある情報が必要なのだが、 いいかげんそういう情報を手書きでコードに落しこむのには飽きたので、 DTD のいんちきパーザを書いた、のが昨日。
パーザが取り出した情報は Hash/Array/String/Symbol あたりで表現されていて、 コードに落すのはとりあえず pp で十分なのでそうしてみる。
が、やってみるとおんなじような記述がたくさん出て来て無駄が感じられる。 どうせ id は無意味なので、 等しい構造のオブジェクトは全部まとめてしまってかまわないはずである。
というわけで、等しいものを同じものにまとめてみる。 例によって Hash は Hash キーとして使えないのが面倒だがそこは てきとうに eql? と hash を定義して済ます。 また、せっかく同じものにしておいても pp でコードにすると複製されてしまうので、 amarshal を使う。
やってみると、まぁ、オブジェクトの数はかなり減る模様。 2844オブジェクトが180オブジェクトになるとか。 ただ、amarshal-pretty を使っても読みやすさとは縁の無いコードである。 使うかどうかは悩みどころ。
さて、等しいものを同じものにまとめるのは、今回は構造が DAG なので 葉っぱからひとつづつやってきゃよかったわけだが、cycle があるとどうだろうか?
... ふむ。もしかしてオートマトンの最小化と同様か?
いや、Hash キーの扱いのところが微妙に違う?
author を meta で書いているページがけっこうあることに気がついたので、 title と同様に抽出してみる。
ついでに、link で書いているものもあるようなのでそっちも見る。
うぅむ。publicfile は If-None-Match を reject するってか。
ということは、Apache が publicfile にリプレースされたときには、 クライアントは覚えていた ETag を忘れないといけないわけだ。
concrete syntax tree を abstract syntax tree に変換する(プログラムを書く)作業というのは、 力仕事としか言いようがない。
[latest]