HHY Language 1.3.0-alpha
Pre-release
Pre-release
·
38 commits
to main
since this release
HHY 1.3.0-alpha
HHY 1.3.0-alpha introduces the first verifiable Bytecode compiler skeleton while
keeping the AST evaluator as the only execution engine and default runtime path.
Bytecode compiler skeleton
- Defines an internal Chunk with bounded instruction and constant storage.
- Lowers every current AST node kind to an explicit Opcode instruction.
- Deduplicates token text in a constant pool.
- Preserves source line and column on every instruction.
- Adds
hhy bytecode <file.hhy>to compile, verify, and disassemble the internal IR.
Verifier
- Rejects unknown opcodes and out-of-range constant references.
- Validates the complete preorder node structure and declared child counts.
- Enforces instruction, constant, and nesting limits.
- Requires one canonical final
HALTand rejects trailing instructions. - Runs against all valid examples and receives direct malformed-chunk and fuzz coverage.
Compatibility boundary
hhy runcontinues to use the AST evaluator.- Parser, Checker, Resolver, Runtime values, Streams, Errors, effects, cancellation,
extensions, and resource limits are unchanged. - Opcode numeric values and Chunk layout are internal alpha details.
- No Bytecode VM, persistent
.hhyc, disk cache, external Bytecode loader, Native ABI,
or default-engine switch is included.
Release policy
This is a prerelease. Linux x86_64, Linux arm64, macOS arm64, and Windows x86_64
must pass before publishing the corresponding archives and checksums. The stable
v1.2.2 release remains the recommended production release.