I am just thinking of ensuring that objects disappear after the page they are on has been printed.
FOs can generate areas on multiple pages. You'll have to keep a list of "terminated" FOs where the layout was finished (in most cases this means the loop over the children run out). This either means using a static variable (bad for MT), passing yet another parameter through the layout or climbing to the page sequence object.
They don't appear to, which is why the memory use of FOP increases in proportion to document length.
Actually, tables are a much bigger problem, for once because there are much more objects in the FO tree for the same amount of content and, more important, because they don't release the generated areas (fiixed in CVS - hopefully).
Anyway, layout is done in a quite different way in HEAD. There is not much value in looking at obsolete code in the maintenance branch.