結局微塵も勉強しないで大学入試センターなわけだ。いくつか試験の心構え的なもの (古典は適当にマークするだけで考えないとか) は考えたけどぶっちゃけどうでもいい。

今日は英語のみだから特に糞不安ってことはないし、むしろテンションハイになっているわけだけど、長文で運が悪いとその後に続く試験 (二日目・一般) がたぶんアレになるのでそれなりの覚悟が必要な気もする。一番気にかかるのはぶっちゃけ試験場なんだけどね。まくら違うと寝れない (嘘) ですから!

勉強しないとサッパリできない科目、つまり政治経済が一番不安要素満載なんですよ。怖い怖い。

昨日なにやってたって chokan 実装やってたよ。本屋行ってアレな雑誌読んだよ。謎だ。

俺が今ある種異様なテンションなのは、ここ三年求めていた向うから強制的にやってくる刺激が、今あるからだと思う。センター試験はいくつかのイベントの始まりにすぎない。いい方に傾くか悪いほうに傾くかはまさしく神のみぞ知るところだから結局どうでもいい。いずれにしても、これから自分がどうなっていくのが楽しみでニヤける。

自己採点したらめっさ低いよ。やべー。

や、平均っぽい?ぶっちゃけどれぐらいが平均なのかわからn

どっちにしろセンター利用私大は無理くさい。一般は願書とりよせた大学全部うけることになりそうだ。

  1. トップ
  2. life
  3. センター試験まであと0日

実験的に Rena を使ってみたかったので、よろしそうなプログラムを考える。

IRC BOT に何か FOAF アレこれできるような機能をつけてみたかった (意味があるかは考えない) ので、とりあえず URI に反応して、それが FOAF だったら foaf:nick と foaf:name をとってくるようにしてみた。

URI (http:) が PRIV されたら HEAD でアクセスして、ステータスコードと Content-Type を確認。`text/xml', `application/xml', `application/rdf+xml', `text/ntriples' であれば Rena にロードさせる。

ロードしたら rdf:about="" なリソースを探し、それが foaf:PersonalProfileDocument であれば foaf:primaryTopic のさすリソースの foaf:nick と foaf:name をてけとーに取得して IRC に NOTICE

Rena は結構遅いので、RDF パース中は chokan が他の処理しないかもしれない。

作るにあたって Using Rena to Process RDF in Ruby が役に立った。

よく考えると open-uri に Accept ヘッダを加えるのは無理 (もしくはめんどう) なので、最初から GET して、response.body を StringIO にして Rena に投げることにする。こうしないとネゴシエーション効いてる場合ダメになる。

メイン部分のコード。

# uri は読み込んだ RDF の URI の URI クラスのインスタンス
# res は HTTP#get の値
model = Rena::MemModel.new
model.load(StringIO.new(res.body),{
:content_type => Regexp.last_match[0],
:base => uri.to_s
})
resource = model[uri.to_s] # 相対 URI は絶対 URI に変換されている。
if resource &&
resource.get_property(RDF + "type").uri == URI.parse(FOAF + "PersonalProfileDocument")
mes = "foaf:PersonalProfileDocument"
foaf = resource.get_property(FOAF + "primaryTopic")
nick = foaf.get_property_values(FOAF + "nick")
name = foaf.get_property_values(FOAF + "name")
# string_array は rdf:Alt とかも全部ひっくるめて単一の文字列の配列にする
mes += " [nick:#{string_array(nick).join(", ")}]" unless nick.empty?
mes += " [name:#{string_array(name).join(", ")}]" unless name.empty?
subject << notice(channel, mes.to_jis)
else
puts "Not FOAF"
end
  1. トップ
  2. rdf
  3. chokan & FOAF
  1. トップ
  2. sw
  3. chokan & FOAF
  1. トップ
  2. irc
  3. chokan & FOAF

YAML を使うことにした。当初 XML を使うつもりだったけどマップするのがめんどいので保留。obj.to_yaml だけなのは簡単でいい。あんまり文法は好きじゃないんだけど……

  1. トップ
  2. ruby
  3. chokan の設定
  1. トップ
  2. prog
  3. chokan の設定
  1. トップ
  2. script
  3. chokan の設定

生徒に動物が混ざっている。でも違和感は特にない。誰も気にしない。動物たちはもともと人間であった。彼らは望んで動物になった。何故だかは知らない。人間の頃の写真を見た。今はライオンの人が印象に残っている。持ち物検査か何かがあるらしくライオンは途中でどっかにいった。ライオンはあまり成績はよろしくない。でも他の生徒からは割りとすかれている存在だった。俺はその教室の中にいつのまにかいる。本校舎から教室が分離してある。

場面が変わって雪山。スキーをつけずに滑り降りる。(ファンスキーをもっとちっちゃくしたら靴サイズになっちゃったよ。みたいな勢い) スノーボーダーが危ない。

  1. トップ
  2. self
  3. 夢、動物の学校

elsif もそうだけど for - in も嫌いだ。読む順番がアレなんだよなぁ。素直に each でいいじゃないみたいな。ついでに each と同じだと考えてるとハマる。スコープがスタックされない (この表現が正しいかは知らない)

  1. トップ
  2. prog
  3. Ruby for-in