I'm having fun with quickcheck, but it definitely takes careful thought. You need tests that can be parameterised over a range of inputs.
miniblog.
Related Posts
It's confusing how 'REPL' refers to two different UIs:
A CLI like IPython or Julia, where things like multiline editing and syntax highlighting need careful implementation.
An editor protocol like SLIME or CIDER where multiline editing is a total non-issue.
Be careful evaluating code from LLM based tools, as there are several avenues for malicious users to inject output:
Copilot was super helpful for changing some locals to lazy_static!:
let integer_re = Regex::new(...) // old
static ref INTEGER_RE = Regex::new(...) // new
Unfortunately, it added a $ to the end of my first regex! It saved me a ton of keystrokes, but needed careful checking.