3 ms·
If you're interested in playing around with term rewriting, I highly recommend the Redex framework! https://docs.racket-lang.org/redex/index.html https://docs.r
by jswrenn 6y ago
If you're interested in playing around with term rewriting, I highly recommend the Redex framework! https://docs.racket-lang.org/redex/index.html https://docs.racket-lang.org/redex/index.html
It's a really neat way to model programming languages and transition systems. Unfortunately, I think the documentation is perhaps more intimidating than the tool (its target audience is programming language theorists; not people who just like noodling around with programming language design).
My favorite Redex hack is that you surface your Redex model as a hashlang (Racket's way of providing replacing/extending the language), and get a fully-featured algebraic stepper in DrRacket! See this repo and PR for details: https://github.com/justinpombrio/RacketSchool/pull/5 https://github.com/justinpombrio/RacketSchool/pull/5
- boygobbo 6y agoThat's a really useful comment - thanks!