Underrated perk of JSON: it's easy to programmatically make changes to a file made by a human.
Very few other formats have this advantage. `cargo add` took a bunch more implementation work than `npm install`, because preserving TOML comments takes more work.
miniblog.
Related Posts
I've been learning some Common Lisp by writing some simple JSON munging programs. I'm sure it's not best practice — I should probably deserialise to CLOS automatically — but it's a nice way to get comfortable with the basics.
It feels weird deliberately ignoring helpers though.
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 love how the CommonMark Spec has a test suite that's just a JSON array. It's really easy to test a library for compliance, and I've seen developers nerd-sniped into full compliance.
https://spec.commonmark.org/0.31.2/spec.json