(module poly_id (fn id (type (forall (vars a) (fn-type (params (own a)) (ret (own a))))) (params x) (body x)) (fn main (type (fn-type (params) (ret (own (con Unit))) (effects IO))) (params) (body (seq (seq (app print (app id 42)) (do io/print_str "\n")) (seq (app print (app id true)) (do io/print_str "\n"))))))