憂鬱な午後のひととき


8月29日_
Development Environment Conference
数日前から狙ってたのにさくっと申し込みに失敗した. 3分で満員かい.
『老ヴォールの惑星』(小川一水)
中篇集. ひさびさのヒット. 特に「漂った男」. 読み始めは短編が似合いそうな設定の割にページ数があるなあと思ったら(後で解説を読むと同様のことが書かれていた), 最後の盛り上がりはなかなか来るものがある. 暫くこの筆者の本を読んでみよう. 「ギャルナフカの迷宮」は『クリムゾンの迷宮』(貴志祐介)の方が緊迫感は強いがラストはこちらが好み.
8月28日_
最近読んだ小説外ればかり. 10連敗はしてるような. 何かすかっとする本無いかしらん.
8月26日_
久々の帰宅. 明日は泥のように寝てそうだ. ちなみに電車に乗る前に買った『漢詩入門』(一海知義)によると「泥」は粘土のどろじゃなくて「どろむし」というのことだそうな. ほー.
8月25日_
インテルのコンテストの締め切り日. ルールが二転三転した上, 予約して使わせてもらうリモートマシンも先方の設定ミスで三度使えなかった(しかも昨日駄目で今日も駄目ってしっかりしろよなあ), というトラブルにもめげず, 一応提出. さて結果は.
しかし二人して1%の速度変化に一喜一憂するあたり末期症状だ.
8月22日_
退屈な作業で眠くて仕方ない最中, 知人のメールにびっくりして目が覚めてしまった. ありがたや. いやあ, しかしそうだったのか. ふうん.
8月21日_
iccでtemplate引数に定数を渡して定数伝搬による最適化を期待していたが, いまいち. 仕方がないのでしょぼい方法で応急処置.
8月19日_
ネットが使えないと実に不便だ. 2週間近く前にKDDIに申し込んだのに「申し込みの確認」ですらやってこない. どないなってんねん. 文句言ってももう暫くお待ちくださいばかりだしキャンセルして他にしようか. icpc 9.1 for Linuxが次のコードで"operands are evaluated in unspecified order"という警告を出す.
template<typename T>
struct A {
    void func() {}
    void func2() { func(); }
};

int main()
{
    A<int> a;
    a.func2();
}
もともとiccは演算子オーバーロードをすると(a + b) * (c + d)みたいなのに対して警告を出す (少々うっとうしい)が, これはどう見てもバグでないかい(Windows版はでないし). intelに報告したいがloginでけん.
8月11日_
ねむ. 今日は16時間ほどパソコンに向かってる気がする. icc for EM64が動かない. GXX_ROOTの設定はやったし, インストール・ガイドの通りにやったつもりなんだけど.
8月10日_
やっぱ暑いとろくな事考えんな. でもエディタのcopy&paste制限はあってもいいかも.
8月9日_
もともと30k行のアプリを2k行にして10倍速くしたり, 10k行を1.5k行にしたり. gotoとswitchだらけの関数, 最後の1文字だけ異なる長さ50文字以上の変数名たちなどなど, もううんざり. sweeperじゃなくてcoderでありたいのだが. 「とりあえず動くものを」という名目で作られるそういうゴミコードの負の遺産は想像以上に大きい(ことをマネージャは知るべきだ). #1週間掛けて1k行のコードの意図を理解し, 一から書き直すと数時間でできて数十行になることも. 免許制なんてのは好かんが, たとえば似たコードが3箇所あると保存できなくなるエディタや, mutexを使おうとすると排他制御に関する問題が出て, 解けないと使えない統合環境など, そういうコード(を書く人)を排除する枠組みを積極的に導入して欲しい, と暑い最中に妄想してしまった.
8月5日_
条件が曖昧すぎていまいち盛り上がらないコンテスト, 今日1時間だけリモートでマシンを使わせてもらえるはずだったがログインできない. 結局諦めてしまった.
8月2日_
・細々とやることが多くて気を抜くと一瞬で時間が過ぎていく. 気をつけなくちゃ.
・去年買って殆どビデオ替わりとなってるtypeRの正面ロゴが唐突に光らなくなった. LEDが切れた? テレビ見てると時々ブルースクリーンにもなるし, これから計算で酷使しようというのに, いまいち安定性に不安が.
8月1日_
インテルのコンテスト, ターゲットソースがやってきた. で, プログラムが巨大なメモリを要求することに焦ったのだが(事前に知らせてよ…), このプログラム, そもそも計算結果を出力しない*. どの値が 「元プログラムと比べて有意に同じ結果が得られること」なんだろう. ケアレスミスとしてもちょっといただけない.
あと, 拡張子がcppじゃなくてCだったり, #includeの<>と""の違いが区別できてなかったり,
>cat foo.C
>extern "C" {
>#include <bar.h>
>void foo()
>{
>    ...
>}
みたいなのがあったりとか. 研究者がとりあえずC++を勉強して書きました, という匂いがそこかしこに. 昔自分がCを勉強し始めた頃の恥ずかしいソースを思い出して身悶えしてしまう(今でも拙いコード書いてるからえらそうなことは言えんが).
*唯一表示されるのは演算時間である. これが「有意に同じ結果が得られること」だったら凄いジョークである. って, こんなこと書いてたら落とされそうだ(^^;

御意見は光成滋生<herumi@nifty.com>までお願いします