Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Define λ through the renaming mechanism. #4991

Merged
merged 4 commits into from May 21, 2024
Merged

Conversation

NoahStoryM
Copy link
Contributor

Checklist
  • Feature
  • tests included

Description of change

To put it simply, this PR has the following changes:

Before changes:

(#%provide new-lambda new-λ)

(define-syntaxes (new-lambda new-λ)
   (let ([new-lambda ...])
     (values new-lambda new-lambda)))

After changes:

(#%provide new-lambda (rename new-lambda new-λ))

(define-syntax (new-lambda stx) ...)

I didn't know how to check the impact of this change on all packages, so I just ran raco setup and found no exception.

See also #4989 (comment).

@racket-discourse-github-bot

This pull request has been mentioned on Racket Discourse. There might be relevant details there:

https://racket.discourse.group/t/renaming-mechanism-for-unicode-in-racket/2910/1

Copy link
Member

@mflatt mflatt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Given the potential to change expansion behavior, I think it would be worth adding a note to the documentation for lambda and λ to record the change. I suggest @history[#:changed "8.13.0.5" @elem{Adjusted binding so that @racket[(free-identifier=? #'λ #'lambda)] produces @racket[#t].}] added before the closing brace of line 2106 of syntax.scrbl.

pkgs/racket-test-core/tests/racket/procs.rktl Outdated Show resolved Hide resolved
@mflatt mflatt merged commit 0b6a0da into racket:master May 21, 2024
7 checks passed
@samth
Copy link
Sponsor Member

samth commented May 23, 2024

It looks like this broke a bunch of packages. A representative failure is here: https://plt.cs.northwestern.edu/pkg-build/server/built/fail/phc-toolkit.txt

The failures mostly are in Typed Racket-related packages, but reverting the changes since 8.13 in Typed Racket does not fix the problems.

@mflatt
Copy link
Member

mflatt commented May 23, 2024

It's not clear that those failures are related to this PR. In fact, they report version 8.13.0.4, but I bumped the version to 8.13.0.5 just after this merge.

Based on the error message, it seems more likely that the failure is related to a847564. I'm able to replicate the error for phc-toolkit, so I'll investigate more.

@mflatt
Copy link
Member

mflatt commented May 24, 2024

Commit a79cd80 is intended to repair an expander problem that caused trouble for TR-related packages, including phc-toolkit.

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.

None yet

4 participants