Skip to content

Identify lexical dictionary bindings without changing source diagnostics - #6291

Open
runarorama wants to merge 1 commit into
gh/runarorama/23/basefrom
gh/runarorama/23/head
Open

runarorama wants to merge 1 commit into
gh/runarorama/23/basefrom
gh/runarorama/23/head

Conversation

@runarorama

@runarorama runarorama commented Sep 30, 2026 •

Copy link
Copy Markdown
Contributor

Stack from ghstack (oldest at bottom):

Assign a distinct identity to each term and binder, including nodes with identical source ranges. Plan fresh names for every local binder and preserve file-level names. Delay alpha-renaming until after checking so duplicate-binding diagnostics retain the original source names. Record lexical depths with one shared depth for each recursive group.

Regression tests cover nested shadowing, mutually recursive locals, capture avoidance, stable file names, and deterministic identities. This is preparation infrastructure; source syntax remains disabled.

Full validation: all 13 unit suites, 22 CLI integration tests, 391 transcripts, edit/load round trips, manual rewrites, docs HTML generation, compiled fix5507 regression, and formatting passed.

[ghstack-poisoned]
This was referenced Sep 30, 2026

This branch has not been deployed

No deployments
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.

1 participant