frostney / frostney/GocciaScript

Flip all entry-point defaults to bytecode and prove parity

Open
#871 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

internal
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

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.