muWords
2026-05-22
English Lexical Input Demo
muWords
Overview
muWords is an English lexical-input design built from
BNC frequency data. This page uses a browser/server demo only as a
reference rendering of the interaction model. The design claim is the
ranked lexical grid, prefix navigation, and shortpress/longpress
grammar, not JavaScript or server architecture.
The current package uses the accepted P/k
prefix strategy from ENGLISH_MULEX_GRIDSPEC_JSON. Each
grid represents a prefix P; a cell's key indicator
k names the child prefix Pk. Common lexical
candidates stay visible as shortpress actions, while longpress opens
the corresponding child prefix when that key also has deeper choices.
| Layer | Compiler | GridPack | Demo renderer |
|---|---|---|---|
| Role | Filters BNC rows and assigns P/k actions |
Stores manifest, shards, displays, and actions | Renders the live reference demo for review |
The hosted route below serves the compiler-generated
MUWORDS_BNC3000_GRIDPACK package. That route is a
practical demo vehicle, not the intended final implementation form of
the input method.
Interactive Demo
The live surface below is a reviewable reference rendering served by the hosted muWords GridPack server route.
Interaction Model
muWords demonstrates the same duration-sensitive lexical
selection idea as the Mandarin GridPack demos, applied to English word
and phrase candidates. A user works from a compact grid, chooses common
words directly, and follows prefix branches when a target is deeper in
the ranked lexicon.
In the current English package, shortpress generally sends the displayed
lexical item. When the same key also has a deeper prefix branch,
longpress opens that branch. For example, home key a
shortpresses the exact one-letter lexeme a and longpresses
to grid a; on grid a, key b
shortpresses a ranked-fill candidate while longpress opens grid
ab. Branch-only cells use shortpress to open the child grid.
The Typing Area shows the text being composed. The Behind the Scenes panel is a teaching and review aid: it exposes current prefix state, pending gesture state, and the last interpreted action so committee readers and interviewers can inspect how the design works. A production input method could hide most of that diagnostic panel.
Compiler Strategy
The English compiler starts from the BNC all.num.txt
word/POS frequency list, keeps clean alphabetic words and clean
underscore phrases, collapses duplicate surface forms, and selects the
current BNC3000 candidate scope. Emitted surfaces may contain
spaces, as in a bit, while navigation keypaths use only
alphabetic characters, as in abit.
The P/k rule keeps the grid regular enough to
explain and measure: exact Pk lexemes pin to key
k, singleton descendants can be sent directly from the
parent cell, remaining cells are filled by frequency order under
P, and lower-ranked words are reached by recursive
Pk branching rather than ordinary next-page grids.
Dissertation Context
For the dissertation, muWords is evidence that the muLex
design can separate three concerns: language-specific lexical data,
a portable grid/action representation, and the user-facing interaction
model. The English page is not a hand-maintained special case; it uses a
generated manifest-plus-shard package to make the design inspectable.
For committee review and academic job-search conversations, the demo makes the research claim inspectable: a compact prefix algorithm can map a ranked English lexicon onto a duration-based grid interface while still leaving the interaction legible to someone seeing the system for the first time.
Current Design Notes
- The Quarto page embeds a hosted reference renderer at
https://danmailman.net/muWords/embed/. - The hosted health route is a demo-maintenance check that reports the active
MUWORDS_BNC3000_GRIDPACKpackage. - The current package covers
3000selected BNC candidates across2676grids and25shards. - The accepted compiler strategy is the
P/kprefix model: gridP, keyk, child prefixPk. - The browser/server stack is used here for review and publication of the demo, not as a claim about the final app implementation.
- The page does not copy GridPack packages, shard files, server source, or runtime JavaScript into this repo.
- The legacy
Grid_Spec_APPL_Eng_3000.csvandapp.jspath is superseded but retained for reference during review. - Local-only server preview instructions remain in the repo documentation, not in the public page body.