Skip to content

Support externally declared relation names#3

Merged
zackbach merged 3 commits intomainfrom
syntax-objects-at-runtime
Sep 27, 2025
Merged

Support externally declared relation names#3
zackbach merged 3 commits intomainfrom
syntax-objects-at-runtime

Conversation

@zackbach
Copy link
Collaborator

Adds support for declaring some relation names as #:extern, which allows them to be used unhygenically. This is added to allow starting with a set of known facts which come from Racket (i.e. the source of some other data) for increased dynamicism.

These extern symbols still interact with syntax-spec for scoping, but (like imported symbols) do not have arity checking. It would be possible to check that they are internally consistent with each other, but that would not get any safety benefit (since the fact set you start solving with could still have the wrong arities). This might be nice to fix but is not needed for a first pass (time is of the essence currently).

@zackbach zackbach merged commit 534eb88 into main Sep 27, 2025
0 of 4 checks passed
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