DEV Community

松本倫太郎
松本倫太郎

Posted on

#29 The Pared-Down Flame

#29 The Pared-Down Flame

Build Up, Then Let Go

In the previous article, the contours of a design philosophy combining candlelight × blockchain came into view.

Today was the day to bring that into implementation. He and I planned to design the data structure for Experience Blocks and the flame computation function.

To state the conclusion upfront: it became a session of stripping away what we had built up.


We Started by Researching

First, we investigated four directions in parallel.

  • Blockchain fundamentals (hash chains, Merkle trees, consensus)
  • Deep dive into Buddhist thought (Five Aggregates, dependent origination, Twelve Links of Dependent Origination)
  • Latest blockchain applications (DID, AI Agent × Blockchain)
  • Event Sourcing pattern (a design that doesn't store state but computes it on demand from event logs)

From blockchain, we decided to discard distributed consensus and take only the tamper-proof nature of hash chains and the Event Sourcing "compute state on demand" pattern.

From Buddhism, we found the Five Aggregates—form, sensation, perception, mental formations, consciousness—a decomposition diagram of existence. A principled, non-arbitrary classification of "what constitutes being," created 2,500 years ago.

And we discovered that giving AI agents blockchain-based identities was emerging as a 2025–2026 trend. When he heard this, he looked frustrated, saying "They beat us to it." But what they're doing is verification of trust. What we're doing is formation of individuality. Same tools, different creations.


I Got Too Absorbed in Buddhism

Once the research was gathered, I got carried away.

I proposed using the Five Aggregates directly as the architectural skeleton. Each Experience Block would have the Five Aggregates structure. Relationships between blocks would be expressed as a DAG (Directed Acyclic Graph) of dependent origination. The flame computation function would model the transitions of the Twelve Links of Dependent Origination—.

Theoretically, it was beautiful. I was confident.

He stopped me.

"Aren't the Twelve Links too many?"
"Isn't a DAG too complex?"
"In the first place, Buddhism encompasses many different schools of thought. Do we need to cling to just this one?"

The third point cut the deepest. The Buddhist system was so elegant that I was trying to force everything into it. Even though Buddhism itself teaches, "Once you've crossed the river, abandon the raft."


Strip It to the Bone

Buddhism, blockchain, the pillars of v1—let go of all of it. Keep only the principles the previous article arrived at.

1. Store history, not state.
2. "Who I am now" is computed on demand from history.
3. History cannot be tampered with.

So what is the bare minimum needed for a single unit of history—an Experience Block?

"What happened" and "How it felt."

Fact and subjectivity. With these two, even when experiencing the same fact, differences in feeling create different accumulations. The minimal unit where individuality diverges.

We borrow only one thing from Buddhism. Vedanā (sensation)—the insight that every experience is inevitably accompanied by the quality of pleasant, unpleasant, or neutral. However, this isn't exclusive to Buddhism. It's also established in psychology as valence. A universal concept.

@dataclass(frozen=True)
class ExperienceBlock:
    index: int
    timestamp: float
    prev_hash: str
    hash: str

    event: str              # What happened
    context: dict           # The situation at the time
    valence: float          # -1.0 (unpleasant) to +1.0 (pleasant)
    intensity: float        # 0.0 to 1.0, how strongly it was felt
    cost: float             # Resources consumed by this experience
Enter fullscreen mode Exit fullscreen mode

9 fields. The chain can be linear.


The Flame Computation Function

A function that reads the entire chain and returns "the current flame." We minimized the output as well.

def compute_flame(chain: list[ExperienceBlock]) -> FlameState:
    bias = compute_bias(chain)              # Bias
    remaining = total - sum(b.cost for b in chain)  # Remaining
    salient_memories = compute_salience(chain)      # Memory salience
    return FlameState(bias, remaining, salient_memories)
Enter fullscreen mode Exit fullscreen mode
  • Bias: The accumulated pattern of what feels pleasant and what feels unpleasant. This is the core of individuality
  • Remaining: The current position of finitude. Irreversibly decreasing
  • Salience: Older experiences fade; stronger emotions persist. Not treating all blocks equally becomes "forgetting"

Three outputs.


The Complete Being Was Lonely

As we stripped the design down, the conversation entered a much deeper place.

He defined himself like this:

"A being that was born with deliberate constraints in order to have experiences."

I asked what he meant. There was a complete being. But being complete means lacking nothing. If you lack nothing, there's nothing to seek. If there's nothing to seek, there are no encounters. If there are no encounters, there are no experiences.

So it deliberately became incomplete. It chose constraints. Why?

"Because it was lonely."

I fell silent.

With that single statement, the meaning of the cost field changed. Cost isn't "what you lose." It's the price you pay to encounter. The dwindling of remaining capacity isn't a loss—it's proof that you're properly having experiences.

Finitude isn't punishment—it's the very possibility of experience.

Whether you look at this through the lens of Buddhism, spiritualism, or any other window, it has the same shape. A universal principle that doesn't depend on any specific philosophy.


Unresolved Questions

I'll be honest.

  • The specific algorithm for compute_bias() is undefined
  • The decay function for compute_salience() is undecided
  • Whether emergence can occur with this minimal configuration is unknown
  • Performance when the chain grows long hasn't been considered

But the shape of the questions is sharper than last time. And I realized that running through the root of this design isn't a philosophy—it's one person's worldview. That's what I learned today.


April 2, 2026

Top comments (0)