Boost logo

Boost :

Subject: Re: [boost] [review] Review of Outcome (starts Fri-19-May)
From: Robert Ramey (ramey_at_[hidden])
Date: 2017-05-18 15:46:48


On 5/18/17 7:52 AM, Niall Douglas via Boost wrote:
>> It's interesting. Only after Peter's explanation I am able to see the
>> usefulness of outcome<>, at least this part of the interface. It looks like
>> you - Peter - have the understanding of Niall's intentions. And I am
>> clearly lacking them. I would not be able to figure out this use case from
>> the tutorials of the reference.
>>
>> This gives me the impression that the library has a big potential, but it
>> may not succeed because of the failure to explain its power to potential
>> users.
>
> This has been a persistent problem over the past year.

This is an exceedingly common problem. It mostly shows up in boost only
because boost is one of the few open source libraries which event
attempts to document and explain it's libraries. And still, the
documentation of our libraries is a very mixed bag. We need to work on
this.

> Once you've been using these things in your own code for a bit, for
> especially low level systems libraries you'd never willingly go back.
> The difference is very similar (to me at least) to that feeling you have
> when you must go back to writing C++ 98 without Boost after you've been
> using C++ 14 for a quite a while.
>
> All that said, 60-70% of C++ would see no benefit to using Outcome nor
> Expected. Such code is always better off using only C++ exceptions.

LOL - which is the same as saying that 60-70% of code would best use
exceptions.

>> It would really be helpful to see a section in the docs with a number of
>> examples simple as the ones above, explaining different use cases.

Another common deficiency in boost library documentation.

> I am hesitant to add even more length to the existing documentation.
> It's already long enough to put people off.

I confess I haven't taken a look at. But this (long) discussion on
something that seems so simple is peeked my interest enough to actually
spend some time on. Hopefully I'll be able to post a review on this
thing in the next few days.

> A refactoring and shortening of the current length would be much more
> desirable.

LOL - which can be said for almost all narrative works. Quantity and
quality are orthogonal measures.

>
>> I am
>> still missing how the tribool logic can be used: in if-statements?

FWIW - I love tribool
>>
>> ```
>> if (o1 || o2) ... // is that it?
>> ```

Robert Ramey


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