Skip to content

Support Racket's qq-and-or.rkt -> core-syntax.rkt file rename#1499

Open
jesboat wants to merge 1 commit intoracket:masterfrom
jesboat:pr-rename-qqandor-coresyntax-TR-change
Open

Support Racket's qq-and-or.rkt -> core-syntax.rkt file rename#1499
jesboat wants to merge 1 commit intoracket:masterfrom
jesboat:pr-rename-qqandor-coresyntax-TR-change

Conversation

@jesboat
Copy link

@jesboat jesboat commented Mar 2, 2026

Typed Racket needs to be updated so it's aware of the qq-append function regardless of whether that function is defined in the old place (qq-and-or.rkt) or the new place (core-syntax.rkt). Once the file rename can be reasonably assumed to be everywhere that somebody would want to be installing TR's trunk branch, probably April 2026-ish, the duplication can be removed.

See racket/racket#5457

NOTE coordinated change in Racket

This change only makes sense if racket/racket#5457 is going to be merged. The proper order for things is probably (1) get approval for both PRs, (2) merge the PR to Typed Racket and wait a couple hours for the package server to update, (3) merge this.

Typed Racket needs to be updated so it's aware of the `qq-append` function
regardless of whether that function is defined in the old place (qq-and-or.rkt)
or the new place (core-syntax.rkt). Once the file rename can be reasonably
assumed to be everywhere that somebody would want to be installing TR's trunk
branch, probably April 2026-ish, the duplication can be removed.

See racket/racket#5457
jesboat added a commit to jesboat/racket that referenced this pull request Mar 2, 2026
This rename makes twofold sense. First, `qq-and-or.rkt` is already more
than just what it says on the tin-- it also defines `let`, `let*`, and
`letrec`. Second, as part of the effort to reduce startup time, we plan
on merging more core macros into the same file; for more info about the
overall effort, see racket#5406

Testing: manually reviewed `git grep qq-and-or` in this repo; the only hits
are #%requires which this commit adjusts. Searched all `*.rkt` and `*.ss`
files in my copy of the package archive; the hits are `stxparse-info` which
appears to include a copy of a decent chunk of racket/base's implementation and
is broken anyway, and one hit in TR which will need a coordinated change.

Note that this requires a coordinated (backwards-compatible) change in Typed
Racket which should be merged at least a couple hours before this change is
merged. That's racket/typed-racket#1499
jesboat added a commit to jesboat/racket that referenced this pull request Mar 2, 2026
This rename makes twofold sense. First, `qq-and-or.rkt` is already more
than just what it says on the tin-- it also defines `let`, `let*`, and
`letrec`. Second, as part of the effort to reduce startup time, we plan
on merging more core macros into the same file; for more info about the
overall effort, see racket#5406

Testing: manually reviewed `git grep qq-and-or` in this repo; the only hits
are #%requires which this commit adjusts. Searched all `*.rkt` and `*.ss`
files in my copy of the package archive; the hits are `stxparse-info` which
appears to include a copy of a decent chunk of racket/base's implementation and
is broken anyway, and one hit in TR which will need a coordinated change.

Note that this requires a coordinated (backwards-compatible) change in Typed
Racket which should be merged at least a couple hours before this change is
merged. That's racket/typed-racket#1499
jesboat added a commit to jesboat/racket that referenced this pull request Mar 4, 2026
This rename makes twofold sense. First, `qq-and-or.rkt` is already more
than just what it says on the tin-- it also defines `let`, `let*`, and
`letrec`. Second, as part of the effort to reduce startup time, we plan
on merging more core macros into the same file; for more info about the
overall effort, see racket#5406

Testing: manually reviewed `git grep qq-and-or` in this repo; the only hits
are #%requires which this commit adjusts. Searched all `*.rkt` and `*.ss`
files in my copy of the package archive; the hits are `stxparse-info` which
appears to include a copy of a decent chunk of racket/base's implementation and
is broken anyway, and one hit in TR which will need a coordinated change.

Note that this requires a coordinated (backwards-compatible) change in Typed
Racket which should be merged at least a couple hours before this change is
merged. That's racket/typed-racket#1499
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