Slide 16
Slide 16 text
エラーハンドリングの歴史
フェーズ アプローチ 特徴
黎明期 正常値=0、それ以外の値はエラー
エラー = 停止、またはステータスコード
戻り値のチェックが任意
統一されてないので各メソッドで返す値がバラバラ
エラー処理の体系化 例外(Exception)
大域脱出による分離、終了モデルの確立
Lisp, C++, Java, PHP, C# ...
エラーは値 Result型、多値返却
成功/失敗を型で表現(Rust, Go, Haskell)
コンパイラやLintで処理を強制、制御フローが明示的
例外処理が導入されることによってエラー処理が体系化された
参考
エラーハンドリングの歴史 https://faithandbrave.github.io/article/error_handling.html
例外を初めて実装した言語 https://yosuke-furukawa.hatenablog.com/entry/2021/12/24/145027
16/60