I've compiled the parser for my Garden programming language to wasm, so I can offer a web playground: https://www.garden-lang.org/
It's over 600KiB of wasm just for a function that returns a parse error message! I'm not sure if that's a lot (cf JS) or a little (cf typical binaries).
miniblog.
Related Posts
Interpreters versus compilers as a spectrum, and a fun worked example of optimising Brainfuck:
I really like managed languages: GC makes some things much easier, and they often have great debugging tooling.
Distributing compiled programs is delightful though. They're easy to package, easy to distribute, and start up is really fast. It's a huge upside.
Adding a macro system to a compiled lisp seems really tricky. It's a ton easier when you have an interpreter that you can throw the macro definitions at.