conal / lambda-ccc

Convert lambda expressions to CCC combinators
Other
146 stars 18 forks source link

Looping CCC optimization #14

Open conal opened 10 years ago

conal commented 10 years ago

The following optimization in LambdaCCC.CCC occasionally leads to non-terminating construction:

  Apply     . (decompL -> g :. f)  = (Apply :. g) . f

A triggering example in test/TreeTest.hs:

main = go "dot1" (dot :: Tree N1 (Int,Int) -> Int)