Какой должен быть тип результата этой функции?

Я хочу написать функцию saveStuff, которая что-то сохраняет в файл, после прохождения определенных тестов. Если тесты не пройдены, мне нужно поднять ошибку. Какой должен быть тип результата этой функции? Я думал о IO (Either String ())и IO (Maybe String), но оба они по какой-то причине кажутся неправильными. Я искал похожие функции в стандартной библиотеке, но они просто возвращают IO (). Они бросают исключения при сбоях. Мне не нравится такой подход.

5
задан missingfaktor 4 May 2012 в 22:27
поделиться