But I’m only implementing my machine in one language, why would this be useful? When do I need the same machine in multiple environments? Or are you referring to things like tooling for visualization etc?
Another benefit is you could use any visual tool (preferably web-based with collaborative capabilities so that all stackholders could work togehter) for state modeling to encapsulate business logics completely in statechart then export SCXML to any language you might be using.