6 ms·
Yeah, there's a toggle for it in read-syntax mode. https://docs.racket-lang.org/reference/Reading.html#%28def._%28%28quote._~23~25kernel%29._read-syntax-accept
by shawn_w 25d ago
Yeah, there's a toggle for it in read-syntax mode.
https://docs.racket-lang.org/reference/Reading.html#%28def._%28%28quote._~23~25kernel%29._read-syntax-accept-graph%29%29 https://docs.racket-lang.org/reference/Reading.html#%28def._...
- GregBuchholz 25d agoHow do you get that to work? #lang racket (read-syntax-accept-graph #t) (let ((a '#0=(0 . #0#))) (display (car a))) ...which of course doesn't work, because `(read-syntax-accept-graph)` is a run-time thing, and the circular-list structure is a `read`-time thing. I couldn't figure it out with this either: https://stackoverflow.com/questions/51942188/read-syntax-forms-not-enabled https://stackoverflow.com/questions/51942188/read-syntax-for... ...just to make sure I wasn't going crazy, this: (let ((a '#0=(0 . #0#))) (display (car a))) ...does work as expected with this online scheme interpreter: https://www.jdoodle.com/execute-scheme-online https://www.jdoodle.com/execute-scheme-online
- shawn_w 25d agoIt might take a custom #lang. I'll play around with it when I have some free time... That read-syntax doesn't just accept everything accepted by plain read is one of my biggest annoyances with Racket.
- shawn_w 24d agoIt's ugly and probably fragile and prone to break, but I found a way. Added it as an answer on that Stack Overflow question: https://stackoverflow.com/a/79997503/9952196 https://stackoverflow.com/a/79997503/9952196