let constant fmt = function
| ConstInt n ->
let k = int_of_string n in
if k < 0 then pp_print_string fmt ("( "^n^" )")
else pp_print_string fmt n
| ConstBool b -> pp_print_string fmt (if b then "true" else "false")
| ConstUnit -> pp_print_string fmt "void"
| ConstFloat f -> pp_print_string fmt f