Я написал некоторую машину состояний в С++ и Java, но никогда не на функциональном языке, как Ocaml
Проблема в том, что я не знаю, могу ли я просто адаптировать код из версий объектов, поскольку в Ocaml записи и варианты более мощные, чем класс;
Итак, мне нужен конечный конечный автомат, управляемый событиями (иерархический, как в UML), легко настраиваемый
Может ли кто-нибудь, кто испытал на поле, опубликовать простой пример? Просто чтобы избежать наиболее распространенных ловушек
спасибо:)
EDIT 16/03: Можно ли это сделать без изменчивого состояния? И я хотел бы инкапсулировать его правильно под именем "FSM", должен ли я выбрать модуль или класс?