目に見えないバグ
OCaml.JPにOCaml*1の説明として次のような一文があり、しばらく前に研究室で話題になっていた。
OCaml ではコンパイルにさえ通ればもう目に見えないバグは無いと人をして言わせしめる程 (さすがにこれは誇張ですが) バグの入りにくいコードを記述出来るのです。
目に見えないバグって何さ? むしろ静的型付けによって目に見えるバグが無くなるんじゃないのか? などと言われたものだけれど、最近ちょっとだけ気持ちが解った。
要するにアルゴリズムさえ正しければ、偶にしか表れないようなバグがない
ということなんじゃないかと。
いろいろと標準ライブラリの中にも困ったモジュールがあって下手にマルチスレッドにしたりするとすぐバグが混入するんだけど(しかも出現は稀)。それが誇張ってことなのかな。
というか、むしろつっこみどころは人をして
の人が誰かってことかも。計算機をして
とかだったら面白いかもしれない。が、やはり訳がわからない。
*1:プログラム言語の一種です