Boost logo

Boost :

From: Niall Douglas (s_sourceforge_at_[hidden])
Date: 2023-09-22 12:33:17


Dear Boost,

Due to too few reviews last time, we are going to try again the review
of this library. This review shall run between Friday 22nd September and
Monday 2nd October. Please do consider contributing a review!

My thanks to Marcelo Zimbres Silva for the only formal review last time,
and to the others including those on Reddit /r/cpp and by private email
who submitted feedback. All your reviews and feedback have been retained
and will be reused for this review.

To remind you all, Boost.Async is a C++ coroutine programming library
based around Boost.ASIO as the executor, with a unique set of properties
which make it incomparable to most existing C++ coroutine programming
libraries. To be specific, it lets you compose arbitrary third party
awaitables without any additional effort, which lets you tie together
third party libraries with ease and convenience. Changes to proposed
Boost.Async since the last review:

1. Major doc improvements & bug fixes
2. PMR is optional
3. optimized associated allocator for use_op
4. lazy generator support
5. public unique_handle & more examples with custom awaitables
6. as_result/as_tuple support (akin to the asio stuff, but takes an
awaitables, i.e. co_await as_result(foo())) - reduces unnecessary
exceptions.
7. with supports return values.

You can read the documentation at https://klemens.dev/async/ and study
or try out the code at https://github.com/klemens-morgenstern/async.

Anyone with experience using C++ coroutines is welcome to contribute a
review at the Boost mailing list
(https://lists.boost.org/mailman/listinfo.cgi/boost), at /r/cpp on
Reddit, via email to me personally, or any other mechanism where I the
review manager will see it. In your review please state at the end
whether you recommend acceptance, acceptance with conditions, or
rejection. Please state your experience with C++ coroutines and ASIO in
your review, and how many hours you spent on the review.

Thanks in advance for your time and reviews!

Niall


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