All chapters21
On this page

HHY Roadmap

Language and VM Evolution Roadmap

v1.7.1 acceptance history and major-release plans for atomic state, shared memory across workers, coroutines and distributed transactions.

1.7.1 controlled concurrency and atomicity

This release fixes resource lifetimes and delivers seven experimental APIs, disabled by default. Review state ownership, cooperative file locks, strict transactions and bounded-task guarantees before enabling them.

Read the complete guide and examplesIncludes the guarantee matrix, failure handling and actual validation evidence

HHY 1.7.1 implementation and compatibility

1.7.1 passes local tests, four-platform CI and release validation. Language specification 1.0 remains frozen. Official sample, HTML and macOS/Linux Database 1.0.0 extensions are verified compatible. VS Code 0.2.0 and Sublime 0.1.0 retain independent versions; syntax and editor contract checks pass.

HIR, six optimization passes, integer MIR, type-feedback guards/deopt and local List scalar replacement are implemented. Explicitly enable HHY_COMPILER=ir, HHY_FEEDBACK_SPECIALIZATION=1 and HHY_SCALAR_REPLACEMENT=1; direct Bytecode remains default. Real workloads have not met default-enablement benefit gates. Scalar replacement retains original GC/quota reservations.

Optimization switches, verification and supported scopev1.7.1 implementation1.7.1 release notesReleased capabilities and limits

Language / VM Evolution Roadmap

Current v1.7.1 · Database 1.0.0 released alongside the complete Web Runtime

v1.0.x1 release
ReleaseRelease dateMain changesAcceptance status
v1.0.0Released2026-08-25Core language and VM semantics frozenPipe, Value, Stream, Error, the core standard library, and three-platform release evidence completed
v1.1.x9 releases
ReleaseRelease dateMain changesAcceptance status
v1.1.0Released2026-08-26Local process extensions and the official database extensionInstall/load integrity, synchronous Protocol 1 calls, database 0.2.0, and three-platform release evidence completed
v1.1.1Released2026-08-27Performance optimization and resource-boundary stabilityhhy profile, interpreter hotspot baselines, and Runtime resource boundaries completed
v1.1.2Released2026-08-27HTML extension and static collector frameworkThree-platform CI, protocol tests, local fixtures, and the real hhylang.dev crawl completed
v1.1.3Released2026-08-28Runtime correctness and performance hardeningGC pressure regression, sanitizers, hash indexes, stable diagnostics, and three-platform release evidence completed
v1.1.4Released2026-08-28Safe static spiderURL normalization, discovery, frontier, limits, fingerprint deduplication, and connection-level SSRF protection
v1.1.5Released2026-08-30Resumable spider and browser renderingPersistent frontier, resume, streamed files, optional Playwright, and Windows MSYS2 build evidence
v1.1.6Completed2026-08-31Stable engineering baselineHost capability probes, layered CI, machine-readable performance baselines, and release consistency gates
v1.1.7Completed2026-08-31Diagnostics and editor baselineVersioned JSON diagnostics, Contract Registry JSON, a minimal LSP, and a VS Code editing loop
v1.1.8Completed2026-08-31Gradual Runtime governanceFirst module boundary, internal ownership API, sanitizer/GC stress, and a blocking performance-regression gate
v1.2.x3 releases
ReleaseRelease dateMain changesAcceptance status
v1.2.0Released2026-08-31Official extension distribution and signingNamespaced identities, Ed25519-signed index and package descriptors, deterministic resolution, dry runs, and transaction-safe installs
v1.2.1Released2026-09-01Locking, offline installs, and safe rollbackThe same lock produces the same graph; offline rebuilds work; failed upgrades preserve the old environment
v1.2.2Released2026-09-01Official HTML complex-extension validationReal fixtures, observable truncation, structured errors, and four-platform distribution all pass
v1.3.x15 releases
ReleaseRelease dateMain changesAcceptance status
v1.3.0-alphaPrereleased2026-09-01Bytecode compiler skeletonCore syntax compiles, invalid Bytecode is rejected, and AST remains the default engine
v1.3.0-betaStage gate completeMerged into v1.3.0Bytecode VM execution coreThe execution bridge, verifier, resource boundaries, and full dual-engine fixtures passed acceptance
v1.3.0-rcStage gate completeMerged into v1.3.0Performance, profiler, stack trace, and default-switch gatesThree-platform and failure evidence is complete; the CPU benefit gate failed, so AST remains the default
v1.3.0Released2026-09-01Opt-in production Bytecode pathThe full suite passes both engines; the performance decision retains AST as default with explicit fallback
v1.3.1Released2026-09-01Real-workload compatibility hardeningThe official workload dual-engine matrix and capability evidence passed three-platform CI
v1.3.2Released2026-09-01VM internal-boundary stabilizationVersioned Bytecode Runtime boundary, static governance, and continuous AST oracle
v1.3.3CompletedMerged into v1.3.5Native Opcode executionNormal Bytecode execution no longer calls the AST evaluator; full dual-engine semantics pass
v1.3.4CompletedMerged into v1.3.5VM data-path optimization1M CPU workload ratio is 0.6805 with no material short-script or JSON/I/O regression
v1.3.5Released2026-09-01Bytecode default enginerun, profile, and shorthand default to Bytecode; AST remains the permanent oracle and explicit fallback
v1.3.6Released2026-09-01Stream Int fusion performance closureProvably safe shapes fuse conservatively; unknown shapes fall back losslessly; dual-engine and cross-platform gates pass
v1.3.7Released2026-09-01Specialization hardeningNamed metadata, unified stack/error rules, fallback reasons, and three-path differential gates pass
v1.3.8Released2026-09-01Compiler/Verifier optimization IRRuntime does not inspect AST shapes; Stream Kernels verify independently and fall back safely
v1.3.9Released2026-09-01Profiler and resource consistencyNormal and observed execution share decisions; overhead, cancellation, and Heap-attribution gates pass
v1.3.10Released2026-09-01Bytecode cache governanceFive-workload evidence misses admission thresholds; no cache and no unverified external Bytecode
v1.3.11Released2026-09-02Runtime error-path hardeningStructured errors publish only after full construction; the original fuzz input is retained as a permanent regression
v1.4.x4 releases
ReleaseRelease dateMain changesAcceptance status
v1.4.0Completed2026-09-03Web Runtime foundationEmbedding, one-time application loading, reusable handlers, and isolation gates complete
v1.4.1Completed2026-09-03Web MVPHTTP/1.1, Router, Query/Header/Cookie, JSON APIs, and stable errors complete
v1.4.2Completed2026-09-03Web application capabilitiesMiddleware, static files, uploads, CORS, signed cookies, gzip, and reload complete
v1.4.3Released2026-09-03Streaming and multi-workerSSE, Stream, large-file Range, processes, and observability complete; one million requests with zero failures
v1.5.x1 release
ReleaseRelease dateMain changesAcceptance status
v1.5.0Released2026-09-07Database 1.0.0 and Runtime resource integrationPools, remote TLS, transactions, cursors, exact types, cancellation and worker isolation; dual-database/engine and release Actions pass; RDS validation pending
v1.6.x4 releases
ReleaseRelease dateMain changesAcceptance status
v1.6.0Evaluated2026-09-08Instruction selection and dispatch profilesVersioned opcode/pair/triple metrics and switches ship in v1.7.0; superinstructions did not meet admission gates
v1.6.1Implemented2026-09-08Calls, closures and unwindCompact call layout, closure paths and exception-region experiments pass differential checks; opt-in, shipped in v1.7.0
v1.6.2Evaluated2026-09-08Conditional inline cachesMap-slot experiment and stable/changing call-site evaluation completed; generic fallback retained, not admitted by default; shipped in v1.7.0
v1.6.3Evaluated2026-09-08GC, memory and scheduling decisionsAllocation/pause and scheduling demand evaluated; no new GC or async scheduler admitted; decisions delivered in v1.7.0
v1.7.x2 releases
ReleaseRelease dateMain changesAcceptance status
v1.7.0Released2026-09-08Optimizing Compiler & RuntimeFour-platform CI and release validation pass; HIR, six passes, integer MIR, guards/deopt and local List scalar replacement ship opt-in
v1.7.1Current2026-09-14Resource ownership fixes and seven opt-in concurrency APIs. Remaining 1.7.x work stays subject to acceptance.Passed local Release and ASan/UBSan suites, 69 engine/configuration cases, MySQL/PostgreSQL idempotency and unknown-commit reconciliation, a 120-second soak, 100,000-request Web test, four-platform CI and release validation. Seven experimental APIs remain disabled by default; a 24-hour soak, real power-loss testing and the complete fault matrix remain pending.

Future plans

The roadmap prioritizes atomicity, shared state, coroutines and distributed transactions, grouped by major release series. These are planned goals; unfinished capabilities are not guarantees of 1.7.1.

Major seriesGoalMilestonesAvailability and acceptance
1.xStabilize existing capabilitiesStabilize the seven APIs and establish ownership, effect and resource contracts for shared state and coroutines.Owner-bound atomic state → cooperative file updates → strict database transactions and bounded tasks; remove experimental gates separately after acceptance.24-hour soak on the candidate build, fault matrix, AST/Bytecode parity, platform and resource validation; failed candidates remain experimental.
2.xAtomic state and coroutine kernelDeliver domain-wide language atomicity, atomic shared-memory state across workers, and a coroutine scheduler.Shared arena and generation handles → multi-object read/write sets and unified commit → resumable frames, nonblocking I/O and structured cancellation → integrated stabilization.Transaction-history checks, crash recovery, GC roots, no lost wakeups, fairness, resource bounds and legacy-mode compatibility; stabilize the new language mode only after acceptance.
3.xDistributed transactionsExtend consistency to cross-node participants that support the transaction protocol.Durable coordinator → prepare/commit/rollback adapters → UNKNOWN queries and recovery → high availability, fault injection and operational tooling.Participant crashes, partitions, duplicate messages, decision logs and recovery; stabilize only validated participant configurations, with infrastructure still explicitly configured.
Disabled featureWhen it becomes availableMeaning of availability
Seven existing experimental APIsDuring 1.x stabilization, separately after acceptance for state, files, databases and tasks.Callable without HHY_CONCURRENCY_EXPERIMENTS; APIs remain explicit and ordinary variables keep their semantics.
Cross-worker atomic state and coroutinesExperimental first in 2.x; stable after joint correctness, recovery and resource acceptance.The new mode becomes stable; existing programs do not automatically change sharing or scheduling semantics.
Distributed transactionsIn 3.x after durable coordination and participant acceptance.Stable APIs still require database/coordinator configuration and do not capture all external effects.
Compiler, cache and fusion candidatesNo mandatory enablement release; each must pass real-workload benefit, compatibility and resource budgets.May remain disabled indefinitely; implementation or correctness alone does not establish performance admission.

Release directions are not calendar commitments. In 1.7.1, HHY_CONCURRENCY_EXPERIMENTS=1 already enables the seven experimental APIs. Stable API availability and default optimization are separate decisions; missed gates delay admission without lowering thresholds.

Read current atomicity and concurrency guaranteesSeparate supported behavior, experiments and future plans

Evolution principles

PrincipleConstraint
Freeze semantics firstStabilize Pipe, Value, Stream, Error, and cancellation semantics before broadening the ecosystem surface
Usable and measurable before fastEvery capability needs deterministic errors, resource bounds, and cross-platform tests before optimization
Protocol firstIntegrate third-party capability through the Process Extension Protocol instead of inventing a second language model
ABI only when justifiedEvaluate a Native ABI only after Runtime stabilization and measured need; choosing not to publish one is a valid result

Review the roadmap once per quarter. Only unfrozen releases may move; scheduling changes must not weaken published semantics, compatibility commitments, or migration paths.

Explicit non-commitments

  • No second Pipe, Stream, or Error model merely to justify a release number.
  • No public exposure of internal Runtime C structures without a compatibility strategy.
  • No use of recommended windows as a reason to skip testing, security, or cross-platform validation.
  • No simultaneous rush into a remote registry, Native ABI, and multiple official extensions before stage gates pass.