Обработка ошибок
Ахтунг
Этот раздел находится в неопределённом состоянии.
Смотрите по теме
- Composable Error Handling in OCaml Vladimir Keleshev
- Advanced Error Handling in OCaml Vladimir Keleshev
Когда и что использовать
Используйте исключения для фатальных ошибок, либо ошибок, которые зачастую не произойдут. Монады для ожидаемых ошибок, ошибок бизнес-логики, вроде некорректных данных от пользователя и т.д..
Двойники
Иногда для удобства делают функции-двойники (с суффиксом _exn), которые выкидывают исключение в случае ошибки.