On Tue, Oct 3, 2023 at 3:35 PM Bjørn Roald
On 3 Oct 2023, at 09:04, Klemens Morgenstern via Boost < boost@lists.boost.org> wrote:
Well, if we're going for fun, then i dare to propose Boost.ACE, which would stand for Asio Coroutine Extensions.
Well that name may work, but it is sort of a throw-off for me as I am old enough to know about the Adaptive Communication Environment (ACE):
The ADAPTIVE Communication Environment (ACE) https://www.dre.vanderbilt.edu/~schmidt/ACE.html dre.vanderbilt.edu https://www.dre.vanderbilt.edu/~schmidt/ACE.html [image: favicon.ico] https://www.dre.vanderbilt.edu/~schmidt/ACE.html https://www.dre.vanderbilt.edu/~schmidt/ACE.html
As ACE address related in problem domains, and as it still is live and kicking in its own corners of the C++ world, such a name choice begs the question of what the relation is. So for what it is worth, to me that name is taken to mean something else. Sorry.
Absolutely fair point. This is why naming is hard. And for me `async` is associated with the async keyword in other languages, that do something quite similar.
Also, without having had time to review the proposed Boost.Async as closely as I would like to form an opinion on acceptance. I have read the docs and I was really hoping the ASIO dependency was more of a backend issue in need of executors. If so, adding ASIO in its name is perhaps a poor choice.
It is. asio's any_io_executor is a pretty good polymorphic executor, that can run on any event loop (e.g. Qt). I even have an example in async which is using python's asyncio event loop instead of asio's. I think many users remember the early days of asio, when everything was directly dependent on asio's io_context and thus think my dependency means you'll get all of asio included. A lot has happened, and asio contains the proposed standard executors, which is the part async is depending on.
— Bjørn