[GHC] #9332: Memory blowing up for strict sum/strict foldl in ghci
GHC
ghc-devs at haskell.org
Sat Jul 19 18:06:49 UTC 2014
#9332: Memory blowing up for strict sum/strict foldl in ghci
-------------------------------------+-------------------------------------
Reporter: | Owner:
artella.coding | Status: closed
Type: bug | Milestone: 7.8.4
Priority: high | Version: 7.8.3
Component: GHCi | Keywords: ghci, strict,
Resolution: fixed | memory
Differential Revisions: | Operating System: Linux
Architecture: x86_64 | Type of failure: Runtime
(amd64) | performance bug
Difficulty: Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: |
-------------------------------------+-------------------------------------
Comment (by nomeata):
Not a bug.
`longList` is a CAF (e.g. a global not-yet-evaluated constant). When you
load it in GHCi and evaluate result, GHC doesn’t know whether you are
going to use `longList` again, and has to keep it in memory.
But if you compile it is a program, or as a module only exporting `main`,
GHC will make `longList` a local definition that, after the evaluation of
`Result` is started, can be garbage collected. (With `-O` it will probably
fuse it away even, but that is unrelated here.)
But thanks for reporting!
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9332#comment:8>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list