The grid kernel is unchanged. UTF-8 is the universal substrate — every script becomes bytes, and the grid already addresses bytes. English is just the worked example; this alpha accepts any language. Output is provisional — this is a test.
Real timings, measured in your browser over many runs. The dispatch is fast; the cost is in the expansion, not the clock.
Bits are ISO/IEC 80000-13 units. Bytes-per-character is the honest “rest-mass” of the script: English ≈ 1, CJK ≈ 3. The same writing costs more in some scripts because it carries more.
A sieve onto the SI / NIST standard — real, exact, published constants everyone already holds (the physics analog of ASCII/UTF-8). This is one honest example. Developers: richer physical-units sieves can layer here, the same way language sieves do. We invent no constants — only the standard institute’s.
The EMOT field records reception — how the result lands — not a claim the system makes. It is a labeled place for response, kept separate from the deterministic math. Reception is not measurement; the grid does not take a poll.
| # | char | byte | n | t | k | fraction |
|---|
Step k per character position. Offline, drawn by hand (no library). The shape is the payload; confirm it in Desmos or your own spreadsheet from the CSV.
What this shows. Every character is turned into one or more fractions through the same grid law as the ASCII bridge. A clean round-trip proves the structure survived — never that it means anything about the world. A multi-byte character (中, 😀) is several fractions; each fraction is honestly just one byte, and the bytes assemble into the character. Legibility doesn't break — you choose how deep to read.
Vote on the current reading: does it look right, or does something seem off? This resolves convention — how to read an ambiguous case — the way a reader and an assistant converge on a meaning together.
Firewall: votes resolve convention, never the math. The
grid is deterministic — 16862/65 is always the byte for l, and no vote
changes a decode. Consensus lives in the meaning layer, above the kernel, never inside it.
Votes register locally first, then sync — like an autosave. If the sync can't reach the server (offline, or backend not deployed), your vote is kept locally and you'll see a warning. Nothing transmits unless you vote.
Developers / going live: set VOTE_ENDPOINT in the script to your
deployed Cloudflare Worker URL (free tier). Worker code is in the vote design note. Until then
this demo runs local-only and warns honestly on every failed sync. Language sieves (Latin-1,
Cyrillic, CJK…) layer on the same kernel; that's the other place to build.
The aggregate reading, live. Anyone can read it; no one can alter it. Sentiment only — how the result lands. No finance, no prediction.
This is sentiment — reception, the meaning layer. It records how readers feel the decode landed; it never changes a decode. The grid is deterministic and takes no vote. No individual votes are stored — only the running totals (no identities, no tracking).