Skip to main content
computer-science economics engineering-and-technology linguistics physics

Flow

Description

A directed movement of some substance from source to destination through some medium. Flow is one of the most pervasive image schemas in human reasoning — we naturally talk about money flowing, conversation flowing, traffic flowing, energy flowing, signal flowing, water flowing. The structural commitments are minimal: there’s a thing that moves, a place it starts, and a place it ends up; the medium and rate are details, not constitutive. Flow is rarely interesting alone — it almost always shows up in composition with something else: gradient (what makes it move), bottleneck (what limits rate), feedback-loop (what regulates rate), buffer (what smooths rate), or seam (where rate-shape changes). Naming flow as a primitive is what lets the catalog compose those richer higher-order concepts cleanly.

Triggers

User-initiated: User describes throughput, rate, channel, pipeline, or “things moving through” something. Vocabulary cues: “throughput,” “rate,” “channel,” “pipe,” “pipeline,” “stream,” “flow rate.” Agent-initiated: Agent recognizes that a system has directed movement of a substance from one place to another, and the rate matters. Candidate inference: “what is the source, what is the substance, what is the destination — and what is the rate-limiting point?” Situation-shape signals: Anywhere “throughput” makes sense as a question. Anywhere queues form. Anywhere a “pipeline” metaphor lands without being weird.

Exclusions

  • Static systems — if nothing is moving and the question isn’t about movement, flow doesn’t fire. Inventory at rest is not a flow; the flow exists only at the in/out boundaries.
  • Bidirectional or undirected exchanges — gossip, dialogue, market trading without clear source-destination roles. The schema requires directionality; symmetric exchange uses a different primitive.
  • Discrete one-shot events — a single signal isn’t a flow; a continuous or repeated signal stream is.

Structure

Internal structure of flow: a table of its component slots and the concepts that fill them.

Relationships

Relationship neighborhood of flow: a graph of the concepts it connects to and the concepts it is a part of.
  • backpressure — flow + feedback-loop = backpressure. Backpressure presupposes a flow to push back against.
  • bottleneck-buffer — flows have rate-limiting points (bottlenecks) and rate-smoothing reservoirs (buffers); together they shape end-to-end throughput.
  • gradient — flow follows gradient. The gradient is the cause; the flow is the response.
  • seam — flows often change character at seams (rate, format, ownership); flow + seam = where format-mismatch failures live.
  • multi-channel-ingest — multi-channel-ingest is multiple parallel flows converging.

Examples

Water through pipes · physics

the literal origin; carries the metaphorical baggage all software uses.

Cash flow · economics

money as substance, business operations as medium; entire accounting discipline.
UX research on the path of user attention through a screen layout; same primitive, different substrate.
items (rows, events, requests) flowing through transformation stages.
Fluid-dynamics literal origin: the metaphor is grounded in physical fluid behavior.
Lakoff and Johnson’s Metaphors We Live By (1980) argued that abstract reasoning is structured by a small set of preconceptual image schemas drawn from embodied experience — CONTAINER, BALANCE, FORCE, LINK, and notably SOURCE-PATH-GOAL. The SOURCE-PATH-GOAL schema (something moves from an origin, along a trajectory, toward a destination) is the cognitive primitive underlying flow.The book’s claim is that this isn’t a vocabulary coincidence — humans don’t borrow “flow” from fluid dynamics each time we use it; rather, the directed-movement schema is already in place from infant motor experience, and fluid dynamics, traffic, money, attention, and conversation all map onto it. The catalog treats flow as a primitive partly on the strength of this cognitive-linguistic claim: when a concept’s structure recurs because human minds are pre-wired to use it, the concept earns “fundamental” status.
Cognitive linguistics identifies SOURCE-PATH-GOAL as one of the small set of canonical image schemas — pre-linguistic structural patterns that humans use to organize experience and map onto language. Lakoff and Johnson (Metaphors We Live By, 1980; Johnson, The Body in the Mind, 1987) argue that abstract reasoning is grounded in such embodied schemas: we understand directed change of any kind by analogy to physical movement from a starting point, through a path, to a destination. Talmy’s force-dynamics literature complements this by giving the schema a causal animacy — something pushes the substance along the path. The fluid-dynamics origin (rivers, currents, fluxes) supplies the prototypical instance that most flow vocabulary still echoes (“upstream,” “downstream,” “bottleneck,” “drain,” “leak”).Inference: When users reach for flow-vocabulary in any domain (money flow, conversation flow, signal flow, request flow), they are reasoning through SOURCE-PATH-GOAL. The diagnostic move is to make the three slots explicit — what is the source, what is the substance, what is the destination? — because the schema’s portability is exactly what makes it useful, and the structural questions that apply to physical flows (rate, gradient, bottleneck, buffer, backpressure) transfer along with the schema to wherever it lands.
physical items flowing through stages; lean-manufacturing literature is built on this.
electronics, music production; literal directed movement of audio or electrical signal.
Dataflow programming makes the flow concept the explicit organizing principle of a programming model: a program is a directed graph of operators connected by channels, with data moving through them as it becomes available. The lineage runs from W. R. Sutherland’s 1966 dataflow systems through spreadsheets (cells as nodes; references as edges; recomputation as propagation) and Doug McIlroy’s 1972 UNIX pipes (small programs composed by streaming text through stdout/stdin) to modern Reactive Streams and stream-processing frameworks.Each instantiation makes the same structural commitment: producers, consumers, and the channel between them are first-class, and program behavior is understood by tracing flow through the graph. The recurrence across decades and substrates — early dataflow hardware, end-user spreadsheets, OS-level pipes, library-level reactive APIs — is evidence the flow primitive is doing real structural work, not just providing metaphor.
Leonard Talmy’s 1988 paper formalized force-dynamics as a system humans use to organize causal and energetic relationships in language and thought: agonists and antagonists, tendencies toward motion or rest, blockages and releases. Within that system, flow is a primitive force-dynamic pattern: a carrier with an inherent tendency to move, traversing a path, sustained or impeded by external forces.The framework explains why “flow” extends so naturally beyond fluids — “cash flows,” “ideas flow,” “the conversation flows,” “traffic flows” all preserve the same force-dynamic configuration regardless of what’s flowing. Talmy’s contribution was making explicit that the same conceptual primitive sits underneath all these uses; the catalog inherits that observation as evidence the flow concept is cognitively basic rather than a metaphorical extension from fluid dynamics.