MPS issue job003344

TitlePurpose of allocation frames/SNC pool class are unclear
Statusclosed
Prioritynice
Assigned userGareth Rees
OrganizationRavenbrook
DescriptionIt's not clear what the use cases are for allocation frames and the SNC pool class, nor whether the benefits can be realized in practice. What should we say in the documentation?

It would also be nice to know what the "No Checking" in "Stack No Checking" refers to. RB suggests that this might be because it's intended for use on the back end of a compiler that enforces the pairing of pushes and pops.
AnalysisThe purpose of SNC is to implement stack languages like PostScript and Forth, where some objects live in stack frames and are known to be dead when the stack is popped. The "No Checking" means that the garbage collector does not check to see if the objects are really did when the stack frame is popped: it is assumed that the language can ensure that objects that escape the stack are copied to the heap.
How foundinspection
EvidenceNone.
Observed in1.110.0
Created byGareth Rees
Created on2012-10-24 15:48:00
Last modified byGareth Rees
Last modified on2016-04-13 17:55:50
History2012-10-24 GDR Created.

Fixes

Change Effect Date User Description
191078 closed 2016-04-13 13:52:30 Gareth Rees Explain the purpose of allocation frames and the SNC pool.