Re: [racket-users] Top-level unbound identifiers during expansion

2021-06-28 Thread Greg Rosenblatt
Thanks Sam. I ended up finding another alternative, which is to replace the set!-followed-by-define with define-values: (define-values (name.r ...) (values (lambda (param ...) body ...) ...)) One more related question (though given the hopelessness, I'd understand if there isn't a great answe

Re: [racket-users] Top-level unbound identifiers during expansion

2021-06-28 Thread Sam Tobin-Hochstadt
This is indeed an issue where "the top-level is hopeless" is the problem [1]. However, there's a better work-around. You can write `(define-syntaxes (name.r ...) (values))` to forward-declare all those names, and then the subsequent definitions will work correctly. Sam [1] https://lists.racket-l

[racket-users] Top-level unbound identifiers during expansion

2021-06-25 Thread Greg Rosenblatt
I've encountered an identifier binding order issue that only manifests in the REPL. My current workaround is to use forward definitions followed by set!s. I've heard rumors that the top-level is hopeless, but I'd like to try and make this work without unnecessary workarounds, if possible. To