frostney / frostney/GocciaScript
Flip all entry-point defaults to bytecode and prove parity
Nobody has claimed this yet.
- Dominant language
- Pascal
- Stars
- 20
- Forks
- 3
- Avg merge
- 3d 4h
- Merged PRs (30d)
- 45
Description
Summary
Flip all entry-point defaults to bytecode and prove parity — the reversible first step toward removing the interpreter.
Why
Every runner, the library RunScript/Runtime, and thread/ShadowRealm init currently default to interpreter mode (only test262 CI uses bytecode). Removing the interpreter requires bytecode to be the proven default everywhere first.
Current behavior
Defaults are interpreter across GocciaScriptLoader(/Bare), GocciaTestRunner, GocciaREPL, GocciaBenchmarkRunner, GocciaSandboxRunner, and TGocciaEngine.RunScript* (Goccia.Engine.pas:2092).
Expected behavior
- All entry points default to bytecode mode.
- The full JS suite + test262 + Pascal parity tests pass with bytecode as the default.
Scope notes
- Reversible — deletes nothing yet. Sequenced before the eval-port (#872) and deletion (#875). Parent #825.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Audit the listed runners, GocciaScriptLoader(/Bare), GocciaTestRunner, GocciaREPL, GocciaBenchmarkRunner, GocciaSandboxRunner, and TGocciaEngine.RunScript* at Goccia.Engine.pas:2092. Run the full JS suite, test262, and Pascal parity tests with bytecode defaults. Done means every listed entry point defaults to bytecode and all three test groups pass.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- compilers
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100