[GHC] #15403: Compact Regions with Lazy Evaluation

GHC ghc-devs at haskell.org
Tue Jul 17 07:38:17 UTC 2018


#15403: Compact Regions with Lazy Evaluation
-------------------------------------+-------------------------------------
        Reporter:  andrewthad        |                Owner:  (none)
            Type:  feature request   |               Status:  new
        Priority:  normal            |            Milestone:  8.6.1
       Component:  Compiler          |              Version:  8.4.3
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by osa1):

 Another problem is that we'd need to teach mutators to allocate in a
 compact region. Currently mutators only allocate in nurseries (with the
 exception that some primops can allocate large or pinned blocks etc.) and
 code generator generates code accordingly. I think a simple trick like
 "update Hp to point to the compact region, revert it back afterwards"
 would not work as because of lazy evaluation we'd have to update Hp when
 evaluating objects referenced by the thunk in the compact region and
 update again for any other object (not sure if this is possible to do).

-- 
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15403#comment:1>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list