
#15453: Bug in opt_trans_rule in OptCoercion -------------------------------------+------------------------------------- Reporter: ningning | Owner: ningning Type: bug | Status: closed Priority: normal | Milestone: 8.6.1 Component: Compiler | Version: 8.4.3 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D5018 Wiki Page: | -------------------------------------+------------------------------------- Comment (by ningning): Replying to [comment:14 simonpj]:
A first step would be to include `GRefl` and anything else that isn't reflected in the paper.
Questions: - In this paper, types and kinds are separated, coercions are between types, and they are homogeneous; while in GHC, types and kinds are merged, coercions can be between kinds. This is important because all GRefl is doing is casts between kinds. Do we want to merge types and kinds in the paper, make coercion heterogeneous and add kinds information? - Do we want to add roles? - If the answer is yes for both questions, I am actually wondering if it might be simpler to add coercion optimization rules in core-spec. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15453#comment:16 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler