Changes between Version 1 and Version 2 of SingleThreadedCollection


Ignore:
Timestamp:
May 19, 2006 3:49:06 PM (8 years ago)
Author:
guest
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • SingleThreadedCollection

    v1 v2  
    11Back to GarbageCollectorNotes 
    22 
    3 = Interesting Object Types =  
    43 
    5  * CONSTR - constructors 
    6  * THUNK - thunks (courtesy of being a lazy language) 
    7  * FUN - functions 
    8  * IND - indirections - what is left behind after thunk evalution since we dont know who all would be referring to the thunk.  
    9  * TSO - thread state object - see discussion at CapabilitiesAndScheduling 
    10  * PAP - partial application - a function onject to which only some arguements have been applied. 
    11  
    12  
    13 = Backward Pointers =  
    14  
    15 Backwards pointers are the cause of much heartache in writing generational GCs. They are essential pointer from older generations to newer ones. If you think about it, such a thing should never really occur in a pure functional langauge since objects cannot be updated once created. While that is true in essence, backward pointers do arise in Haskell in the following cases 
    16  
    17  * Thunk updation 
    18  * Unsafe pointer updation  
    19    * GHC.Prim 
    20    * usafePerformIO : Haskell.IO.Unsafe 
    214 
    225= Scavenging =