Skip to content

feat(PARSE-02): add binding-aware compiler front end - #29

Merged
ellainng merged 1 commit into
mainfrom
feat/PARSE-02-compiler-front-end
Oct 20, 2026
Merged

ellainng merged 1 commit into
mainfrom
feat/PARSE-02-compiler-front-end

Conversation

@ellainng

Copy link
Copy Markdown
Member

Adds a standard-library compiler front end for python-browser/1: source parsing, lexical scope/import binding, profile validation and immutable typed IR with stable source locations and hashes. Resolves JavaScript aliases by identity, preserves shadowing and conservative branch types, and serializes integer constants without JSON precision loss. Target code is never executed.

Validation: all 53 package tests pass locally, including the adopted positive/negative corpus, alias/shadowing, recursion, Unicode columns, deterministic snapshots and no-execution cases; wheel/source builds pass. Explicit diagnostics cover unsupported initialization, conditional imports/functions and identity/interning boundaries. JavaScript emission remains EMIT-01.

Closes #12

@ellainng
ellainng merged commit 19d9536 into main Oct 20, 2026
3 checks passed
@ellainng
ellainng deleted the feat/PARSE-02-compiler-front-end branch October 20, 2026 17:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

PARSE-02: Build AST binding, validation and lowering passes

1 participant