1 consts comp :: ('a,'v) expr => (('a,'v) instr) list
2 primrec
3 "comp (Cex v) = [Const v]"
4 "comp (Vex a) = [Load a]"
5 "comp (Bex f e1 e2) = (comp e2) @ (comp e1) @ [Apply f]"