On 2015-08-25 13:50, Niall Douglas wrote:
On 25 Aug 2015 at 17:49, Paul A. Bristow wrote:
But let me clear, if anyone can suggest a similarly short, instantly recognisable, uniquely standout name for monad<T>, I'm all ears.
OK - here's a concrete suggestion. [snip] these are all *outcomes* - of varying types of varying and unspecified Thingy.
So rather than Thingy or Donkey, how about:
Outcome<R>
I like Boost.Outcome and boost::outcome::basic_outcome<Policy>.
Do these make sense however:
outcome<T>: Can be empty/T/error_code/exception_ptr.
result<T>: Can be empty/T/error_code.
option<T>: Can be empty/T.
If people like this, I can change Boost.Monad to Boost.Outcome very easily.
I like this selection. I think it's better than your existing choices both for those people who know what a monad is (because they won't be annoyed by its stealing the name) and for those who don't (because it's more descriptive). (I agree that naming these things is a nightmare, and it's a shame so much time has been and probably will be spent on it) John