2003年7月17日(木) 前線通過後はくもり [同日]
● [Ruby] ruby-1.8.0のリリースは7月中
だそうです。preview4は24日までに。
● [Ruby] Rubyの一部の「制御構造的演算子」は再定義できない
a ? b : cとか||とか&&はRubyスクリプトでも拡張ライブラリでも再定義できないのだそうです。
● ソフトウェアに支配される社会
どこに書いてあったんだっけな?政治家が頭をしぼって法律を考えても、実際に社会を支配してるのは、実際に実装されたソフトウェアなのだ、という話。アメリカの税金の計算なんていい例だと思うけど*1、そういう話を、「Excelの計算のバグ」(hirax.net)を見て思い出したのです。
Excelを使う時には注意が必要で、統計関数や財務関数にバグがあるだけではなく、計算誤差がどう出るか予測できないという問題もあるのですが、「とはいえ、Excelは簡単で使いやすいのもそれまた事実なのだ。」というのが、僕を含めた大部分の人の意識なのではないでしょうか?
財務関数をヘルプの通りに使うと4000万円の住宅ローンの利子の支払いが100万円以上も多くなるなどということは実際に起こってそうだし、自分でチェックしようにもExcelを使ったチェックは信用できないんだよね。結局、利率の計算方法を知らないといけない、ということになります。
「簡単で使いやすい」からといって、結果が実際に使えるほど正確とは限らない。道具を使う時にはその道具の限界を知って使いたいものです。
*1 基本的には、納税者が紙の上の条件分岐に従って計算をすすめていくのでソフトウェアというのは語弊があるけれども
● トップページの写真、やっと入れ替えました
どこかに1週間に1回、とか書いてなかったか?
前のアパートの近くにはお城があって、庭の花壇がいつもきれいに整備されています。いつでも花が咲いているのは、定期的に根こそぎ掘って捨て、どこからかツボミのいっぱいついた苗を持ってくるから。豪快というかなんというか…。
● [tDiary] tDiaryさきっちょに追従しました
いろいろやらなきゃいけない風味なので:
- disp_referrer2.rbを高速化(どこが削れるかなー)
- 更新完了画面が廃止されたので別の場所に「その他」のリンクを出す。どこー?
- weather.rbとdisp_referrer2.rbをwwwから設定可能に
- ruby1.8でどれくらい速くなったか確かめてみたい
- disp_referrer2.rbでアンテナのURLをオプション設定可能に
しかし。w3mで更新用ウインドウを常駐させてる身としては、 編集後には「追加」の画面に飛ぶのがいいな。
● [tDiary] 編集後には「追加」画面に飛ぶtDiary
そういうわけで、改造を最小限にしようとするとこんな感じに。
Index: tdiary.rb
===================================================================
RCS file: /hoge/fuga/tdiary.rb,v
retrieving revision 1.1.1.1.2.16
diff -u -r1.1.1.1.2.16 tdiary.rb
--- tdiary.rb 2003/07/17 17:38:16 1.1.1.1.2.16
+++ tdiary.rb 2003/07/17 17:49:45
@@ -1019,8 +1019,7 @@
protected
def do_eval_rhtml( prefix )
super
- anchor = @plugin.instance_eval( %Q[anchor "#{@diary.date.strftime('%Y%m%d')}"].untaint )
- raise ForceRedirect::new( "#{@conf.index}#{anchor}" )
+ raise ForceRedirect::new( 'update.rb' )
end
end
do_eval_rhtmlの結果が前みたいになるといいんだけど、時間もないし。
● [Ruby][tDiary] あれ?
手元のapacheでやってみました。
echo '' | time ./index.rb > /dev/null
みたいな感じ。
- ruby 1.6.7 (2002-03-01) [i586-linux]
- 0.59user 0.10system 0:00.70elapsed 98%CPU (0avgtext+0avgdata 0maxresident)k
- ruby 1.8.0 (2003-07-12) [i686-linux]
- 1.79user 0.07system 0:01.88elapsed 98%CPU (0avgtext+0avgdata 0maxresident)k
うむう。
(追記) シェルから実行してるんだからapache関係ないやん。
(また追記)ruby-1.8ではエラーが出てた ことがわかりました。 キャッシュも消してなかったし、上記のテストはぜんぜん意味がない。
● [memo] 自然言語処理2題
英日翻訳CGIの仕組みの紹介と関連記事を検索する手法。どちらも、小宮日記より。興味深い。あとでちゃんと読むこと〜。
最近のツッコまれどころ