Boost logo

Boost :

Subject: Re: [boost] [review] Review of Outcome (starts Fri-19-May)
From: Peter Dimov (lists_at_[hidden])
Date: 2017-05-15 22:22:53


Niall Douglas wrote:

> Vicente, when he reviewed Outcome's docs, was pretty appalled at how error
> handling focused they are. His view is that Expected is an EITHER monad
> where E is exactly like T, and he was not happy that Outcome presents
> Expected as if it is solely for use for returning stuff from functions.
>
> And, he is right.

No, he isn't. The whole point of expected<> is that T is not like E. That's
why T is _expected_, and E is _unexpected_. It's in the name.

When T is like E, you use variant<T, E>. Or variant<E, T>.

My own idea of expected<T, E...> takes one T and an arbitrary amount of Es,
and while all Es are alike, T isn't.

And this aside, the general idea is to provide alternative to exceptions,
which kind of implies returning stuff from functions, does it not?


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk