Subject: Re: [boost] [outcome v2] How important is it that an Expected implementation is also provided?
From: Andrzej Krzemienski (akrzemi1_at_[hidden])
Date: 2017-10-04 07:18:14
2017-09-28 0:51 GMT+02:00 Niall Douglas via Boost <boost_at_[hidden]>:
> So here's the question before any second peer review. Should Outcome v2
> 1. No Expected implementation at all, not even under a different name.
> Not its place.
> 2. The Expected implementation which the consensus on boost-dev felt the
> WG21 Expected ought to be (this is the current situation, and no we
> don't call it `expected<T, E>`).
> 3. A closely conforming, but not exactly conforming , implementation
> of WG21 Expected.
> Options 2 and 3 can be combined. But be aware that Peter rolled together
> an even more conforming Expected implementation using his variant2
> library. I had been assuming people would be better advised to use his
> likely exactly conforming implementation, rather than Outcome v2's not
> exactly conforming implementation. Less surprise.
Just to clarify your question. Outcome v2 will provide a number of ways for
the user to customize the interface: different templates, hooks, ability to
derive from base templates and modify behavior. Correct?
You are considering shipping Outcome v2 with one such customized type that
resembles Expected as close as possible in order to:
1. Demonstrate that this is possible
2. Because many people will want to use a type they have learned from
reading proposals for Expected.