Strict-by-default vs Lazy-by-default https://www.barrucadu.co.uk/posts/2016-02-12-strict-vs-lazy.html (clear, readable defense of lazy programming languages)
miniblog.
Related Posts
It's odd how lazy evaluation is generally seen as a niche design choice, yet the vast majority of languages treat `foo() || bar()` as short-circuiting.
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.
I've met a bunch of lovely Haskell programmers, but I'm always surprised by the range of PL interests they have.
(1) Some are particularly into lazy evaluation. I get it: you can do some really elegant code for some problems. I've enjoyed this in other PLs too.