
On Mon, Aug 18, 2025 at 12:25 PM Seth via Boost <boost@lists.boost.org> wrote:
On Mon, Aug 18, 2025, at 6:34 PM, Artyom Beilis via Boost wrote:
IMHO if something is needed it is a lightweight object oriented alternative to asio instead of template based one when for example stream socket handles both Unix domain socket and tcp without templates. This, ironically, would be something you can propose. Far too many (bad) attempts exist in the wild-west (e.g. github). It does seem to have grown increasingly easy (the advent of any_executor, any_completion_handler, associator<Tag, …> traits), so I’m no longer as convinced of the need, but perhaps I’m the wrong target audience.
Speaking on this a bit more, I'm not entirely convinced a v2 of Asio would even need half as much of the customization points it has today. I'm actually not sure how much they're used in practice but I can say that I've kept basically all of my deployed Asio very vanilla and I've never taken advantage of any features like a custom executor. The only thing I've ever done is migrate from implicit strand to explicit strand or something along those lines. It is funny though, how even Chris seems to have realized the problems with templates and introduced the classes like `any_executor`. An Asio with far fewer templates and built entirely around coroutines would be a very compelling competitor. - Christian