Control.Monad.Operational.Reflectable
data Program r a
data ProgramView r a
fromView
toView
instr
interpretWithMonad