GHC API user: How to stop simplifier from turning recursive let-bindings into mutually recursive functions
christiaan.baaij at gmail.com
Mon May 8 14:17:36 UTC 2017
I've created a ticket for this at:
On 8 May 2017 at 16:12, Ben Gamari <ben at smart-cactus.org> wrote:
> Christiaan Baaij <christiaan.baaij at gmail.com> writes:
> > Hello GHC Devs,
> > So my question are:
> > - Which part of the simplifier is turning these local recursive
> > into global recursive functions?
> The simplifier does a bit of let floating. See Simplify.simplLazyBind
> and SimplEnv.doFloatFromRhs. I suspect this is what you are seeing.
> > - Is there some way to disable this transformation?
> You could try adding a flag which is checked by doFloatFromRhs. I'm not
> sure what, if anything, might break if you do so.
> - Ben
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the ghc-devs