3 ms·
This is not any different from a macro. You still translate your DSL into your host language AST, with the only final step different - runtime eval instead of a
by sklogic 11y ago
This is not any different from a macro. You still translate your DSL into your host language AST, with the only final step different - runtime eval instead of a compile-time macro.
All my macros look like (defmacro something (dsl) (compile-dsl-whatever dsl)). You can always pass the same (compile-dsl-whatever dsl) to (eval ...).