The _ActionType metaclass gives the convenient Action.parse method. However, by hanging this functionality on _ActionType and Action it smashes the action parsing unit together with the action execution unit together with all of the implementations of individual actions.
What is the intended and desirable interface between wiring and action parsing? What is the intended and desirable interface exposed for executing an action? These things are difficult to see when looking at the current implementation and they are not explicitly defined anywhere outside of the implementation.
The
_ActionTypemetaclass gives the convenientAction.parsemethod. However, by hanging this functionality on_ActionTypeandActionit smashes the action parsing unit together with the action execution unit together with all of the implementations of individual actions.What is the intended and desirable interface between wiring and action parsing? What is the intended and desirable interface exposed for executing an action? These things are difficult to see when looking at the current implementation and they are not explicitly defined anywhere outside of the implementation.