[GHC] #9601: Make the rewrite rule system more powerful

GHC ghc-devs at haskell.org
Fri Dec 16 20:08:15 UTC 2016


#9601: Make the rewrite rule system more powerful
-------------------------------------+-------------------------------------
        Reporter:  spacekitteh       |                Owner:
            Type:  feature request   |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  7.8.2
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
 Type of failure:  Runtime           |  Unknown/Multiple
  performance bug                    |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:  #9137, #10804     |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by nomeata):

 The syntax might look like these are types, but morally, they are would
 simply be boolean predicates:
 {{{
 IsLiteral :: a -> Bool
 }}}

 These predicates could be normal, user defined functions (which the
 compiler would then try to symbolically evaluate), built-in “magic”
 predicates like this one, or functions without “normal” implementation,
 but with further rewrite rules that determine the predicate. Isabelle’s
 simplifier supports all that, and even more, if you are looking for
 inspiration.

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9601#comment:9>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list