Tom Marchant writes:

<begin snippet>
Anything else depends upon programming standards at each shop.  For example,
when obtaining storage for a save area, do you obtain additional
storage for the program to use?  How much?  How does the macro
determine how much?  What subpool is used?
</end snippet>

raising an important set of issues.

Dynamic storage classes---LIFO and non-LIFO, stack and heap, even the
terminology varies---are often poorly handled in assembly-language
programming because the distinctions among these classes are not
understood.

Scratch storage for use within a routine should certainly be obtained
when save-area storage is obtained, and this single block of storage
should almost always be stack- and not heap-based.

How to specify how much of this storage is required?  Well in
assembly-language it should be DSECT-defined; and in statement-level
languages it is always DSECT-defined, although this is not always
obvious.

It would be very agreeable to have some standard terminology for use
in writing and talking about these questions, but consensus is going
to be elusive.

John Gilmore, Ashland, MA 01721 - USA

Reply via email to