Pharo is a lot of fun, but it doesn't seem to have a convenient npm-style package manager as far as I can tell. Shame.
Related Posts
One nice feature of cargo that I wasn't previously aware of: you don't need to do anything after updating your Cargo.toml.
In npm, you need to remember to `npm i` after changing package.json. It's not declarative and the state can get out of sync.
I'm having fun writing a simple type checker, but I'm learning firsthand why syntax-directed checking doesn't work. It prevents inference.
My checker catches real bugs, but it can't handle cases like this:
[1, 2].map(fun(x) { x + 1; })
I think I need bidirectional checking.
It's always seemed odd to me that the Rust stdlib is so lean (no random numbers, regex, HTTP) yet clippy is so big (correctness, performance, style preferences, even 'too many arguments').
Maybe it's because cargo is mature but clippy doesn't have an extension ecosystem?