On Mon, Aug 19, 2013 at 5:24 PM, Tom Ellis <tom-lists-haskell-cafe-2013@jaguarpaw.co.uk> wrote:
On Mon, Aug 19, 2013 at 05:15:39PM -0400, jabolopes@google.com wrote:
> But I would like to see more code move away from exceptions and into
> types like "Maybe" or "Either" or other types defined for the
> particular situation (as some people were suggesting in the beginning
> of the thread). And the reason for this it is because when you program
> against types you have to make a decision whether to handle the error
> or let it bleed through: you can't ignore the choice because you can't
> ignore the type. On the other hand, with exceptions, you can easily
> forget to handle the exception if you're not looking at the
> documentation at the time when you write the code.

This is /exactly/ the reason to avoid exceptions where possible.

Tom


And tangentially related, it's why Go uses error return values (with functions being able to "return multiple values"), e.g. http://blog.golang.org/error-handling-and-go