- tc_ip_bind (IPBind ip expr)
- = newFlexiTyVarTy argTypeKind `thenM` \ ty ->
- newIPDict (IPBindOrigin ip) ip ty `thenM` \ (ip', ip_inst) ->
- tcMonoExpr expr ty `thenM` \ expr' ->
- returnM (ip_inst, (IPBind ip' expr'))
+ tc_ip_bind (IPBind ip expr) = do
+ ty <- newFlexiTyVarTy argTypeKind
+ (ip', ip_inst) <- newIPDict (IPBindOrigin ip) ip ty
+ expr' <- tcMonoExpr expr ty
+ return (ip_inst, (IPBind ip' expr'))