という話だとも思った。
昔のプログラマ笑い話でこんなのがある。
大学のホストコンピュータ管理者がいた。彼の大学では、学生は大型コンピュータをタイムシェアリングで利用するシステムになっていた。しかし学生の自作プログラムにはバグが多く、良く暴走してCPUリソースを喰い尽くすので困っていた。
困った彼は「あるプログラムが無限ループするかどうかを判別するプログラム」をつくって、学生のプログラムをそれでフィルターすればいいのではないかと思った。
しかし、いくら苦労してもどうしてもうまくいかない。
一定時間が経過したら無限ループだ。という判定にするのも、学生の課題の内容によってはまずいだろう。何週間もかけて計算する研究もあるだろうし。
同様の理由で、一定の命令数を超えたらという判定もできない。
ロジックの誤りで、意図せずに無限ループになってしまうプログラムだけを判別すればいいのだ。 (オチは真中あたり。ネタがわからん場合はコメントください。ちなみにこの判定ソフトが完成出来たら、アラン・チューリング記念館に名前を刻む事は確実です)
O(log n)で済む処理をO(n ^ 2)で書いてしまうのは、悪い富豪主義プログラムだ:
いまどきだったら、可逆圧縮でローテート使って500MBぐらいのメモリを使うのも許される。それも富豪主義?
増井さんの言っているのは、最適化のため/低負荷のためにメンテ性の悪い複雑なことは止めよう。ということだよね。
locateデーターベース作成が良い例で。たった何MBかを節約するために、すごいめんどくさいことやっているし。当時のMBは貴重だから、意味はあるにはあったけど。
シャノンの法則を知らずに圧縮アルゴリズム書くのも、遠回りだし。
増井さんの言っているのは、最適化のため/低負荷のためにメンテ性の悪い複雑なことは止めよう。ということだよね。
locateデーターベース作成が良い例で。たった何MBかを節約するために、すごいめんどくさいことやっているし。当時のMBは貴重だから、意味はあるにはあったけど。
シャノンの法則を知らずに圧縮アルゴリズム書くのも、遠回りだし。
つーか、ようするに「数学」に対するイヤゲか:
受験で数学をやるはめになった人は、その傾向はあるかもしれない。
オレは中学で無理に合唱をさせられて、音楽が大キライになってCD買わなくなったし。
受験数学は知らないから、オレが無邪気なだけかも。
オレは中学で無理に合唱をさせられて、音楽が大キライになってCD買わなくなったし。
受験数学は知らないから、オレが無邪気なだけかも。



[ コメントする ]