Basic Block Versioning – My Best Result Yet
https://pointersgonewild.com/2015/09/24/basic-block-versioning-my-best-result-yet/
(example where dynamic types give more precision and perf than static!)
miniblog.
Related Posts
I've given up migrating my VPS hosts to newer distro versions. Instead, I'm trying to rebuild a new host with the newer distro version.
I'm slowly making all my server config reproducible and automated as a result :)
nREPL is a really interesting protocol for developer tools. It's extensible, but one of the basic operations is eval().
If your nREPL server doesn't support a given operation, you can just send an eval request to achieve the same result!
Counter-intuitively, if you're writing a parser for a programming language, you need it to be a total function. As soon as you build IDE tooling, you need ASTs from invalid or incomplete input.
The parser should return (Ast, List<Error>) rather than Result<Ast, Error>.