The Heap (GNU Algol 68 Compiler Internals)

### 2.4 The Heap ¶

- A value that has rows and gets returned by a procedure shall be allocated on the stack.
- A copy of the right hand side is made before assigning it to the left hand side. This copy is always allocated in the heap, because the scope of the left hand side may be older than the scope of the right hand side. This happens when assigning to a global variable.
- A trimmer of a name. This is because the trimmed multiple may be allocated on the heap, and the trim shall have the same scope than the trimmed multiple.