build_exh_env now translates
now pat_fo translates, silly definition...
type inferencer almost translates, parser doesn't