@@ -293,11 +293,24 @@ guardedUnify orientation left right =
294 do leftDesc <- UF.get left
294 do leftDesc <- UF.get left
295 rightDesc <- UF.get right
295 rightDesc <- UF.get right
296+ putStrLn (toString leftDesc ++ " vs " ++ toString rightDesc)
296 case actuallyUnify (Context orientation left leftDesc right rightDesc) of
297 case actuallyUnify (Context orientation left leftDesc right rightDesc) of
297 Unify k ->
298 Unify k ->
298 k vars ok err
299 k vars ok err
302+toString :: Descriptor -> String
303+toString (Descriptor content _ _ _) =
305+ FlexVar _ -> "FlexVar"
306+ FlexSuper _ _ -> "FlexSuper"
307+ RigidVar _ -> "RigidVar"
308+ RigidSuper _ _ -> "RigidSuper"
309+ Alias _ _ _ _ -> "Alias"
310+ Structure _ -> "Structure"
301subUnify :: Context -> Variable -> Variable -> Unify ()
314subUnify :: Context -> Variable -> Variable -> Unify ()
302subUnify context var1 var2 =
315subUnify context var1 var2 =
303 guardedUnify (_orientation context) var1 var2
316 guardedUnify (_orientation context) var1 var2