No mystery scoreboard
Progress, limits, and next work
LilScript already has serious whole-program compression. The roadmap
separates shipped evidence from current constraints and the next
compiler experiments.
Loading the generated evidence count.
Shipped and verified
Evidence we can defend
-
JavaScript, emitted C, and native behavior gates before
publication.
-
Current Vite 8/Oxc, Vite/Terser private-property, and Closure
ADVANCED lanes.
-
Complete selected npm entrypoints separated from partial
compatibility work.
- Raw, gzip-9, and Brotli-11 reported independently.
-
Real login, animation, geometry, and property-boundary scenarios.
-
Generated project pages with exact source previews and repository
links.
Current constraints
What is not solved
-
Large candidate searches can spend minutes on robust-predicate
topology.
-
Property mangling still depends on an explicit closed-world/export
contract.
-
Browser rendering claims need repeatable in-browser hardware runs;
Node/jsdom is only a proxy.
-
SolidLil runtime parity does not make its partial LSX frontend
complete; partial Preact, Zod, Immer, Acorn, and Redux surfaces
are also excluded from full-library claims.
-
A smaller demo app does not establish a smaller reusable public
API.
Next compiler work
Ordered experiments
-
Escape-owned properties. Prove which fields never
cross extern/export boundaries, then mangle only those without a
global closed-world switch.
-
Search budgeting. Cache equivalent IR candidates,
stop dominated branches earlier, and publish compile-time
alongside byte wins.
-
Cross-module shape DCE. Carry field-use and
call-signature facts through preserve-module output.
-
Startup-aware scoring. Keep raw/codec candidates
while rejecting parse, allocation, or hot-loop regressions with
measured profiles.
-
Broader applications. Add routing, validation,
state, and rendering scenarios only when both sides perform the
same algorithmic work.
Research notes
What Vite and Closure taught us
Vite/Rolldown gets leverage from graph-level tree shaking before Oxc
performs compact syntax, constant folding, dead-code elimination, and
binding mangling. Closure ADVANCED treats the program as a closed
world and combines global renaming with interprocedural optimization,
but only when externs and exported contracts are modeled correctly.
LilScript’s typed IR can often go further through scalar replacement
and typed specialization; its highest-value next step is proving
ownership and escape boundaries automatically.