メモの日々


2002年05月21日(火) 何もない日

会社

  • 10:30 パン貰ってスープ飲んだとこ。
  • 12:20 なぜか突然空港の施設管理の話を聞かされた。また見積もりかよ。
  • 12:30 redhatで毎日rootにエラーメイルに来るので、そのメイルに書いてある対策を実行した。さっぱり分からんが、とりあえず
    /etc/tripwire/twinstall.sh
    を実行。するとサイトのパスフレーズとローカルのパスフレーズというのを決めるよう求められるので決めた。忘れそうだな。スーパーでかかっている曲からとった。その後
    tripwire --init
    を実行。そのようなファイルやディレクトリはありません、というエラーがいっぱいでたけど最後にはデータベースは正常に作られたというメッセージが出た。なにやってるのかようわからん。まずい傾向だ。これでApacheが落ちなくなるといいのだけれど。
  • 12:45 Tomcatはエラーメッセージを返すときにContentTypeを指定していないのかな。HTMLで書かれているのにtext/planeで表示されるので見づらい。IEだとHTMLで見れる。
  • 17:10 わーい、Strutsの雛型を改造して日本語ハローワールドを作れた。ApplicationResources.propertiesの内容を変えるだけなのだけど、日本語を使うにはnative2asciiを使ったりJSPに<%@ page contentType="text/html; charset=UTF-8" %>と書いたり色々面倒なのだ。
  • 17:15 Wineプログラムの修正依頼がきた。ライン河をラインガウに変更する。これからやってみるが覚えてるかなあ。
  • 18:00 変更は問題なく出来たと思う。ふう。
  • 19:25 ez-HTMLというHTMLエディタをインストールしてみた。XHTMLにも対応していてなかなかよさげ。
  • 19:55 Strutsでログインを作ってみようと思ったけどバックエンドのJavaBeansを作らないといけなそうなので明日だ。

[windows] MS01-055: スクリプトにより、IE の Cookie データが漏洩または改ざんされる

5/13にメモってたIEにパッチを当てると変になるのはこれと関連しているのかな。jcfml MLより。「解決方法」って章に書いてあることね。

テレビ/本

  • 日経コンピュータ。ふむふむ。

2003年05月21日(水) 羽生が森内から名人奪取し四冠に

生活

  • ボーリングした。アベレージ80。がっくし。
  • くさやのお茶漬けを食べた。全然匂わないのに周りは匂う匂うと言う。先入観とは恐ろしいものだ。

仕事のTODO

  • 年度を変えたらリストをクリア
  • サブミットしてもリストはクリアしない
  • 評価者検索の処理をDAOへ移行

やること

  • 御出席の返事を出す

2004年05月21日(金)

  • 今日は体調がよくない。なんだか異様に疲れている。疲れることなどしていないはずなのだが。
  • テストはあっさり終了してしまった。
  • selectに失敗してプログラムが終了してしまうことがあるようだ。要調査。
  • PCのルーティングがなんかおかしい。要調査。
  • なんでsshじゃなくてtelnetを使うのかね。

[db] 新しい業界標準「SQL99」詳細解説 (@IT)

2000年の記事。なんとなくメモ。はてなより。

[fs] 391位 時価総額9億170万

10節は97fpで、この節だけの順位が189位と過去最高だった。シーズン成績もこれまでで最高になりウハウハ。鈴木慎吾と奥とキャプテン遠藤が活躍。大量失点の森岡だけ失敗。トップとの差は72fpに縮まった。

次節はジュビロから3人。予想はしやすい。

GK佐藤 洋平磐田4440万ヴェルディ高木と迷ったが対戦相手で決めた
DF鈴木 秀人磐田7940万アルビレックスに点取られる気がしない
DF三浦 淳宏東京V5090万前節のFK2発はお見事。MF出場で選びやすくなった
DFリカルド広島5300万よく知らないんだけどポイント稼いでいるので
DF金沢 浄F東京4400万出場するのかちと心配
MF名波 浩磐田8130万前節休んで万全のはず
MF阿部 勇樹(C)市原2050万一週間休んだことで調子を取り戻して欲しい
MF遠藤 保仁G大阪4330万キャプテンにしてもよかった。得点を期待
MF二川 孝広G大阪4120万ヴィッセル相手なら二川のテクニックが炸裂
MF森崎 浩司広島3290万最近サンフレッチェを褒める記事をよく見るので
FWアラウージョ清水7910万連続得点中だから

やること

  • プリンタ処分

2006年05月21日(日)

[tdiary][javascript] tDiaryの各日に編集用リンクを追加するGreasemonkeyスクリプト

を作った。個人的には便利になった。スクリーンショット

同様のものとして、tDiaryのプラグインにedit_today.rbというのがあるけど、これだと自分以外の人にも編集用のリンクが見えてしまうのがちょっと気になる。

Greasemokeyスクリプトのページを作って公開。

[dev][service] 「OSS iPedia」

OSS iPediaは、独立行政法人 情報処理推進機構(以下、IPAといいます)がOSS関連情報の集約と発信のために運営しているデータベースです。

ちょっと前にニュースになっていたみたい。よくわからないけど、オープンソースソフトウェアの情報が色々たまっていくのかな。PCDN News Letter Vol.504より。

やること

  • テーブル生成
  • デザイン変更
  • TV買う?
  • プリンタインク
  • 保険
  • 松井

2010年05月21日(金)

[c++][unix][howto] 関数が定義されているライブラリを探す

nmコマンドを使ったのでメモ。BINARY HACKSの#12,#14が参考になる。

C++のプログラムをコンパイルして

xxx.cpp:100: undefined reference to 
`boost::unit_test::ut_detail::auto_test_unit_registrar::auto_test_unit_registrar(boost::unit_test::test_case*, unsigned long)'

のようにundefined referenceだというエラーになったときに、リンクすべきライブラリファイルを調べるには、ライブラリファイル群があるディレクトリにて

% nm --demangle --print-file-name --dynamic *.so | grep \
  'boost::unit_test::ut_detail::auto_test_unit_registrar::auto_test_unit_registrar(boost::unit_test::test_case*, unsigned long)'

を実行すればいい、と思ったら何も出力されなかった。ここは

% nm --demangle --print-file-name --dynamic *.so | grep \
  'boost::unit_test::ut_detail::auto_test_unit_registrar::auto_test_unit_registrar(boost::unit_test::test_case\*, unsigned long)'

としなければならない。最後の方のポインタを表わす*をエスケープしないとマッチする正規表現にならないから。これで

libboost_unit_test_framework-mt.so:0003bc70 T boost::unit_test::ut_detail::auto_test_unit_registrar::auto_test_unit_registrar(boost::unit_test::test_case*, unsigned long)
libboost_unit_test_framework-mt.so:0003bcc0 T boost::unit_test::ut_detail::auto_test_unit_registrar::auto_test_unit_registrar(boost::unit_test::test_case*, unsigned long)

のように出力される。関数の定義はlibboost_unit_test_framework-mt.soにある。

やること

  • クリーニング
  • 請書

2013年05月21日(火)

インテルコンパイラ13はソースファイルの拡張子に依り動作が変わるみたい

インテルコンパイラを使っていてはまったのでメモ。

#include <iostream>
#include <stdexcept>

int main()
try
{
    throw std::runtime_error("throw !");
} catch (...) {
    std::cout << "catch !" << std::endl;
}

上のC++のソースコードを「icpc (ICC) 13.0.1 20121010」でコンパイルして実行すると

terminate called after throwing an instance of 'std::runtime_error'
  what():  throw !

と出力された。例外がcatchされていない。

長いこと調べて(調べていたのはもっと巨大なプログラム)分かったのは、ソースファイルの拡張子が .c だと上のようになるということ。拡張子を .cpp にすれば

catch !

と表示される。これが結論。

…なんだけど、拡張子が .c でも、別のオブジェクトファイルをリンクするとcatchしてくれたりする。どんなオブジェクトファイルをリンクしたらそうなるのかは分からなかった。バグっぽい動作に見えるので、最新のインテルコンパイラでは挙動が違うかも。

(追記)

拡張子が .c でも、-xオプションで c++ を指定すれば例外がcatchされるようになった。

% icpc --version
icpc (ICC) 13.0.1 20121010
Copyright (C) 1985-2012 Intel Corporation.  All rights reserved.

% icpc main.c; ./a.out
terminate called after throwing an instance of 'std::runtime_error'
  what():  throw !

% icpc -xc++ main.c; ./a.out
catch !

うーん、せめて -xc++ を付けない場合にはコンパイルエラーになってくれればいいのに。

-xオプションはGCCにもあるけれど、GCCの場合はg++を使えば拡張子が.cであってもちゃんと動作する。

% g++ --version
g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

% g++ main.c; ./a.out
catch !

2018年05月21日(月)

[life] 保育園への送り

今日はいつもに比べると静かだった。

立ち入り禁止の看板の意味を聞いてみると、イラストを見て「入っちゃダメ」と答えた。賢い。


2019年05月21日(火)

[math] 相対誤差

相対誤差の定義をメモ。

近似値xの真値Tに対する相対誤差は、

\Large | \frac{T - x}{T} |

で求める。Tが0の場合には計算できないことに注意。

[ruby] test-unitでの浮動小数点の比較

test-unitで浮動小数点の値を比較するためのアサーションをメモ。

test-unitで使えるアサーションの一覧は

を見るとわかる。この中で、浮動小数点比較用のアサーションは次の4つになると思われる。

_in_deltaは絶対誤差、_in_epsilonは相対誤差で誤差の許容範囲を指定する。