metaphor embodied-experience pathnear-farlink enabletranslate network specific

C Pointer

metaphor dead folk

Source: Embodied ExperienceSoftware Programs

Categories: computer-science

Transfers

A memory address as “pointing at” a location. The C pointer borrows from the most basic human communicative gesture: the deictic act of extending a finger to indicate where something is. A pointer does not contain the data — it indicates where the data lives, just as a pointing finger does not contain the object it identifies.

Limits

Expressions

Origin Story

The pointer concept predates C. BCPL (1967) and B (1969) both had memory addresses that could be manipulated directly. But C (Dennis Ritchie, 1972) made pointers a first-class part of the type system, giving them the expressive vocabulary they retain today. Ritchie’s design choice to make pointer dereferencing explicit (the * operator) and pointer arithmetic legal made C simultaneously powerful and dangerous.

The pointing metaphor was not Ritchie’s invention — it was already natural language. “Pointer” had been used in computing since at least the 1950s for any value that indicated the location of another value. What C did was make the metaphor manipulable: you could create pointers, destroy them, move them, compare them, cast them, and compute with them. The pointing gesture, normally an instantaneous communicative act, became a persistent, mutable data structure.

The result was a language where pointer bugs became the dominant source of errors: buffer overflows, use-after-free, null dereferences, type confusion. Every one of these maps to a failure of the pointing gesture, and every one has spawned a defensive technology (bounds checking, garbage collection, option types, borrow checkers) designed to make pointing safe again. Rust’s entire ownership model can be understood as a set of social rules about who is allowed to point at what, and when.

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: pathnear-farlink

Relations: enabletranslate

Structure: network Level: specific

Contributors: agent:metaphorex-miner, fshot