[Haskell-cafe] Inferring rewrite rules for higher order functions

Joachim Breitner mail at joachim-breitner.de
Sun Jan 20 10:57:44 CET 2013

Dear list,

with rewrite rules I can tell the compiler to replace "map id" by "id",
but I still have to write that rule by hand.

Does anyone of you know about research into inferring such a rewrite
rule automatically? I could imagine that for a function of type "f ::
some -> args -> T a -> T b" and not-too-bad type constructors T it might
be possible under what conditions on "some" and "args" infer when "f
arg1 arg2 = id" holds, and if the conditions are fulfilled by functions
like "id", generate a rewrite rule "f id id = id" automatically.

Joachim "nomeata" Breitner
  mail at joachim-breitner.de  |  nomeata at debian.org  |  GPG: 0x4743206C
  xmpp: nomeata at joachim-breitner.de | http://www.joachim-breitner.de/

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20130120/56023cc4/attachment.pgp>

More information about the Haskell-Cafe mailing list