Terra https://terralang.org/ lets you define Lua scripts that generate code in a compilable Lua subset. Cf a preprocessor. Mind-bending.
miniblog.
Related Posts
It seems really odd to me that git uses 'cached' terminology for staging. For example, `git add somefile.rs; git diff --cached`.
Caching implies state that you don't mind losing. There's very little state I want to lose in version control!
I'm still figuring out where Copilot fits in my workflow, and I find it works really well *when I know exactly what code I want*.
When I have e.g. two lines in mind, I can see if it will write them (saving me the typing), and it's trivial to validate correctness.
I've never seen a language add a full-featured REPL later in its life. It's incredibly hard to add "update function definition" interactively.
Clojure is an interesting case. It was developed with a REPL in mind, but the JVM was not. Perhaps the VM matters less here?