Кё>>>Загадка 3. Как часто мне приходилось решать твою загадку на пракике?
СГ>>Наверное Вы ее встретили в первый раз здесь. Ранее она просто в голову не могла придти. Язык ограничивает мышление.
Кё>В конечном автомате Action наверняка будет объектом. Не только выполняемым, но и наверняка со свойствами/данными.
Или так:
class Action
{
...
public:
Action& operator()(Action& param);
} IAction;
IAction=IAction(IAction);
Наслаждайтесь