Здравствуйте, kov_serg, Вы писали:
S>>Ну так оно и в 1980-х выглядело точно так же. Годы идут, хотелось бы чего-то более удобного.
S>>C++ные короутины, если делать их нормально, требуют глубокого погружения в тему. Но если это погружение уже сделано и есть готовая машинерия для поддержки короутин, то писать эти самые короутины становится гораздо проще и удобнее, чем расставлять LOOP_BEGIN/LOOP_POINT/LOOP_END вручную. _>Еще раз повторю что для написания функции loop можно использовать что угодно, в том числе c++20.coroutines или кучу if-ов или switch или КА или ползать по заранее построенному графу исполнения. Это не важно.
Не важно. Я вообще на примере вашего кода показываю г.Музыченко во что выльется ручная работа с объектами вместо применения безстековых короутин из C++20.
Кому-то обязательно понравится ваш подход. Думаю, что по мере усложнения C++ таковых будет немало.
_>ps: Можно подумать что вам не надо раставлять co_yield, co_return, ...
Так ведь их назначение будет понятно каждому, кто разобрался C++ными короутинами.
Это их отличает от написанных Васей Пупкиным LOOP_BEGIN/LOOP_END/etc. При всем уважении к Васе Пупкину.