[GHC] #10359: Tuple constraint synonym led to asymptotic performance lossage
GHC
ghc-devs at haskell.org
Wed Apr 29 13:29:30 UTC 2015
#10359: Tuple constraint synonym led to asymptotic performance lossage
-------------------------------------+-------------------------------------
Reporter: axch | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 7.6.3
Resolution: | Keywords:
Operating System: Linux | Architecture: x86_64
Type of failure: Runtime | (amd64)
performance bug | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Revisions:
-------------------------------------+-------------------------------------
Comment (by axch):
In my actual use case, `test3` doesn't compile. The difference is
that `Box` is also existentially quantified over the type of `obj`,
because I want a heterogeneous collection of `Box`es. Translated to
this context, the compilation error is
{{{
Bug2.hs:51:29:
Record update for insufficiently polymorphic field: obj :: a
In the expression: b {obj = func number obj}
In an equation for `do_step3':
do_step3 number b@(Box {..}) = b {obj = func number obj}
}}}
Offending source file enclosed. I reproduce `test` and `test4`, just
to confirm that they still execute but with bad asymptotics; I elide
`test2`, which is what I ended up doing to get rolling. Is this
compilation error also a bug?
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10359#comment:3>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list