強迫観念についてもそうだけどさ、発明されたときの「売り言葉」が忘れ去られすぎてやおりませんか、とも思うねぇ

これの補足つーかさ。

「適切な場所を見つけてそこでする」というのはね、いわゆる「責務分割設計」ちゅぅ大事で大事くて大事な話だからさ、(昨日の)そっちの話は絶対に疎かにして欲しくないわけよ、なにもエラー処理に限った話じゃない。

そうなんだけれども、こと「例外処理」に限って話す場合、そういえば、と。

うろおぼえつーか、今更教科書的なものを読み返したりしないし、それを手持ちでもなかったりするんだけれど、「例外機構」を持つ言語がさ、「例外機構、すげーんだぜ」の論拠になるのってね、以下のような対応の置き換えなわけよ:

C言語(もどき)
 1 int ret1, ret2, ret3;
 2 ret1 = somefun1();
 3 if CHECK_RESULT(ret1) == ERROR:
 4     set_last_message("なんかえらいことがsomefun1で起こりやがったのだぜ");
 5     return NULL;
 6 ret2 = somefun2();
 7 if CHECK_RESULT(ret1) == ERROR:
 8     set_last_message("なんかえらいことがsomefun2で起こりやがったのだぜ");
 9     return NULL;
10 ret3 = somefun3();
11 if CHECK_RESULT(ret3) == ERROR:
12     set_last_message("なんかえらいことがsomefun3で起こりやがったのだぜ");
13     return NULL;

これが例外機構がある言語なら:

C++言語(もどき)
 1 int ret1, ret2, ret3;
 2 // この場で何か出来る場合は以下のように  catch して云々する、そうでないなら
 3 // catch 云々はここになくていい
 4 try {
 5     // エラー処理に煩わされず本題に集中出来るのだぜベイベー
 6     ret1 = somefun1();
 7     ret2 = somefun2();
 8     ret3 = somefun3();
 9 } catch (const std::runtime_error& e) {
10     std::cerr << e << std::endl;
11 }

おそらく C++ の教科書だの java の教科書だのでは例外の売り文句として、まさに「本題に集中出来るんだぜ、読みやすいでしょーよ」と書いてあるんじゃねーかと思うわけよな。なんなの、教科書も読まない独学なのですかいな? いまどきはそれが合理的、とかかい? いや、でもちげーよなぁ、こんなん何十年も前からよくみるダメコードだものなぁ。何の差なんだろうねぇ、こんなのさ、「才能」の差ではないよなあ?

てなことを思う今日この頃。