NVIDIA / stdexec

`std::execution`, the proposed C++ framework for asynchronous and parallel programming.
Apache License 2.0
1.56k stars 159 forks source link

Interactions with monadic optional #47

Closed LeeHowes closed 3 years ago

LeeHowes commented 3 years ago

This brings to mind two thoughts. 1) Bikeshedding. It uses transform, and_then, or_else. I wonder to what degree we will end up discussing alignment on terminology. 2) I wonder if it is cleaner for us to follow p2300 with a paper to define connect and start for std::optional and get the sender algorithms on optional for free. It would give us co_await on an optional for free too, once co_await sender is defined for the task type, though not coroutine optionals in general.

brycelelbach commented 3 years ago

@griwes thinks that we shouldn't do (1), but we should do (2)