Might you have more success with a Reynolds style defunctionalization pass for the polymorphic recursion you can't eliminate?
Then you wouldn't have to rule out things like data Complete a = S (Complete (a,a)) | Z a which don't pass that test. -Edward On Thu, Jun 19, 2014 at 3:28 PM, Conal Elliott <co...@conal.net> wrote: > Has anyone worked on a monomorphizing transformation for GHC Core? I > understand that polymorphic recursion presents a challenge, and I do indeed > want to work with polymorphic recursion but only on types for which the > recursion bottoms out statically (i.e., each recursive call is on a smaller > type). I'm aiming at writing high-level polymorphic code and generating > monomorphic code on unboxed values. This work is part of a project for > compiling Haskell to hardware, described on my blog (http://conal.net). > > Thanks, - Conal > > _______________________________________________ > Glasgow-haskell-users mailing list > Glasgow-haskell-users@haskell.org > http://www.haskell.org/mailman/listinfo/glasgow-haskell-users > >
_______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users