From 77bb09270c70455bbd547470c4e995707d19f37d Mon Sep 17 00:00:00 2001 From: Simon Peyton Jones Date: Fri, 27 May 2016 15:26:46 +0100 Subject: Re-add FunTy (big patch) With TypeInType Richard combined ForAllTy and FunTy, but that was often awkward, and yielded little benefit becuase in practice the two were always treated separately. This patch re-introduces FunTy. Specfically * New type data TyVarBinder = TvBndr TyVar VisibilityFlag This /always/ has a TyVar it. In many places that's just what what we want, so there are /lots/ of TyBinder -> TyVarBinder changes * TyBinder still exists: data TyBinder = Named TyVarBinder | Anon Type * data Type = ForAllTy TyVarBinder Type | FunTy Type Type | .... There are a LOT of knock-on changes, but they are all routine. The Haddock submodule needs to be updated too --- utils/haddock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'utils') diff --git a/utils/haddock b/utils/haddock index 09054c2c6a..f833ba8cdb 160000 --- a/utils/haddock +++ b/utils/haddock @@ -1 +1 @@ -Subproject commit 09054c2c6ac346b19d0dec9a43956fcea1c272fb +Subproject commit f833ba8cdbe6ea9436f9f7bf79494a968e8394f0 -- cgit v1.2.1