A Day in the Life

2006-04-02

inject は使わない人が多い

そういやこないだの YAPC で Enumerable#inject の話が出て、Ruby ハカーの人はあんま使わないぽい。確かに初心者には使い方はよくわからない(理解するまでプログラミング初めてから一年ぐらいかかったような気がする)し、なにより綺麗にあてはまる事が少ないからだそうだ。

確かにソースが綺麗に・読みやすくなる、というより一行で書けるからまぁ使っちゃおうか、って感じだもんなぁ。

リファレンスマニュアルのサンプルも

合計の計算

p [1,2,3,4,5].inject(0) {|result, item| result + item }
  => 15これは以下のように書くのと同じです。

result = 0
[1,2,3,4,5].each {|v| result += v }
p result
=> 15

だもんなぁ。下の方が直感的に理解しやすす!

blosxom.js 弄り

http://hotchpotch.in/blosxom.js/

  • 適当に plugin を実装
  • Blosxom.Entry.Filters, Blosxom.Entry.filter.prototype とか
    • Entry まわりを ぷらぎんで弄るため
  • permalink は # じゃなくて ? に

ソースコード超改悪><ノ

あれ plugin 周り実装したら permalink が動かなくなったおもういいやしくしく。

ぞく blosxom.js

permalink は # じゃなくて ? のほうが精神上良いと思った!ソースの regexp だと

http://tokyoenvious.xrea.jp/blosxom.js/#diary/hatena#contents1

みたいなリンクできなくなっちゃうし。あと # で permalink 作っちゃうと WinIE のキャッシュがおかしくなるっぽいなぁ。

追記:あーなるほど、 # でアクセスすると dir listening とかキャッシュで持ってるから経済的なのか。ただ ? でアクセスして permalink の時は dir listening 見ない方がより経済的かも。

追記の追記:permalink の時はちゃんと fetch で一回しか取ってなかった><

blosxom.js

http://tokyoenvious.xrea.jp/blosxom.js/

おお、おもろ!

レンダリングするところにフィルタかませばoutputぷらぎん(wiki記法とか)とかなら結構簡単に実装できそう。Dir listening 前提の環境でつかうみたいだから JavaScript の動的ロードも楽そうだし、ぷらぎんフォルダ用意してほげればいけそう。

記事の一覧 >