TYPE SIGNATURES (+++) :: forall {a}. [a] -> [a] -> [a] TYPE CONSTRUCTORS data type (&&&){0} :: * type synonym (^^^){0} :: * -> * -> * PATTERN SYNONYMS (:||:) :: forall {a} {b}. a -> b -> (a, b) Dependent modules: [] Dependent packages: [base-4.16.0.0] ==================== Tidy Core ==================== Result size of Tidy Core = {terms: 24, types: 52, coercions: 0, joins: 0/0} -- RHS size: {terms: 7, types: 6, coercions: 0, joins: 0/0} T18052a.$b:||: :: forall {a} {b}. a -> b -> (a, b) [GblId, Arity=2, Unf=OtherCon []] T18052a.$b:||: = \ (@a) (@b) (x :: a) (y :: b) -> (x, y) -- RHS size: {terms: 1, types: 0, coercions: 0, joins: 0/0} (+++) :: forall {a}. [a] -> [a] -> [a] [GblId] (+++) = ++ -- RHS size: {terms: 13, types: 18, coercions: 0, joins: 0/0} T18052a.$m:||: :: forall {rep :: GHC.Types.RuntimeRep} {r :: TYPE rep} {a} {b}. (a, b) -> (a -> b -> r) -> ((# #) -> r) -> r [GblId, Arity=3, Unf=OtherCon []] T18052a.$m:||: = \ (@(rep :: GHC.Types.RuntimeRep)) (@(r :: TYPE rep)) (@a) (@b) (scrut :: (a, b)) (cont :: a -> b -> r) _ [Occ=Dead] -> case scrut of { (x, y) -> cont x y }