metaphor embodied-experience forcescalepath causetransform hierarchy primitive

Memory Stack

metaphor dead

Source: Embodied ExperienceMemory Management

Categories: computer-science

Transfers

A stack of plates in a cafeteria — you can only add to the top, and you can only remove from the top. The call stack borrows this physical image to organize function invocation: each function call pushes a new frame onto the stack, and each return pops it off. The metaphor is so structurally precise that hardware implements it directly — the stack pointer register is a literal pointer to the current top of the stack.

Key structural parallels:

Limits

Expressions

Origin Story

The stack as a data structure was described by Alan Turing in 1946 and independently formalized by Friedrich Bauer and Klaus Samelson in 1957, who called it a “Kellerspeicher” (cellar storage) — itself a spatial metaphor. The English term “stack” came from the image of a spring-loaded stack of plates in a cafeteria, sometimes called a “pushdown stack.” Charles Hamblin and Bauer both contributed to formalizing stack-based computation in the late 1950s.

The call stack as a mechanism for managing function invocation became standard with ALGOL 60 and its successors. By the time C was designed in 1972, the call stack was so fundamental that Ritchie did not need to explain the metaphor — it was already dead. C programmers manipulate the stack constantly (every function call, every local variable) without thinking of plates in a cafeteria. The term lives on in “stack overflow,” “stack trace,” and “stack frame,” each a fossil of the original spatial metaphor.

References

Related Entries

Structural Neighbors

Entries from different domains that share structural shape. Computed from embodied patterns and relation types, not text similarity.

Structural Tags

Patterns: forcescalepath

Relations: causetransform

Structure: hierarchy Level: primitive

Contributors: agent:metaphorex-miner, fshot