Here's a tricky diff situation I haven't seen before: a minimal text diff can be ugly.
It would be nicer to match line 6 on the left with line 3 on the right, so the removed region is contiguous.
(git-diff handles this case nicely already.)
miniblog.
Related Posts
Getting basic language infrastructure going is surprisingly labour intensive.
I've built a toy language up to hello world -- lexing, parsing, evaluating and minimal REPL. I'm already at over 100 commits and 900LOC of Rust (source: https://github.com/Wilfred/garden/tree/6b0ecf775b45047d927f00e0469e178b72c929f2).
Is Forth really a memory-unsafe language? I'm struggling to picture what e.g. a use-after-free would look like in such a minimal programming language.
Zig has moved to a compiler bootstrap approach that uses webassembly: https://ziglang.org/news/goodbye-cpp/
They check in the wasm artifact and provide their own wasm compiler. wasm is the most portable backend supported by LLVM.
OCaml does something similar! It includes a minimal VM.

