Hi Noah! Noah Lavine <noah.b.lav...@gmail.com> skribis:
> An interesting note from my current project: a partial evaluator means > you don't have to use macros to define the PEG parser (while keeping > exactly the same efficiency as now): instead of having (define-peg > pattern) be a macro that analyzes pattern and outputs code, you have, > (interpret-peg pattern string) be a program that parses string with > peg. Then to generate code, you just partially apply interpret-peg to > pattern, leaving string undetermined. (I'm not sure if the partial > evaluator currently does this, but it would be an interesting > approach.) I’m not sure if it does what you want, but you’re welcome to try and report back—best way to test is to run: (peval (compile exp #:to 'tree-il)) Next step will be to have peval consider local module-private bindings, which should have more visible effects. Thanks, Ludo’.