
#9805: Use TrieMaps to speed up type class instance lookup -------------------------------------+------------------------------------- Reporter: ezyang | Owner: ezyang Type: task | Status: new Priority: normal | Milestone: Component: Compiler (Type | Version: 7.9 checker) | Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by goldfire): There shouldn't be a map for `CastTy` in the trie. See `Note [Non-trivial definitional equality]` in !TyCoRep. Remember that `ty |> co` is equal to `ty` if the kinds are the same. A more interesting scenario: `(t1 |> co1) (t2 |> co2)` is equal to `t1 t2` if the kinds are the same. Note that it might be that neither `co1` nor `co2` is reflexive! -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/9805#comment:17 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler