let has_type e = function
    | Ctype ty -> has_obj e (object_of ty)
    | (Ltype _ | Linteger | Lreal | Lvar _ | Larrow _ ) -> F.p_true