Make_trans.T
To transform the language's output, such as for an optimization, we need to define a module that can translate terms "forward" to the transformed state and "backward" to the original representation.
type 'a from_exp
type 'a exp
val fwde : 'a from_exp -> 'a exp
val bwde : 'a exp -> 'a from_exp
type 'a from_stm
type 'a stm
val fwds : 'a from_stm -> 'a stm
val bwds : 'a stm -> 'a from_stm