The proper way to solve an X-Y problem is to provide a solution for both X and Y.
Y: because there might be a good reason for it and you risk being condescending otherwise.
X: to steer people towards best practices and because it's probably what they wanted.
Related Posts
TIL Advent of Code and Project Euler will deliberately look for puzzles where the naive solution is worse than quadratic.
This ensures that people can solve them with any programming language. You don't want fast languages to be able to use the naive solution.
I'm trying to decide the best voice for PL documentation.
Passive: "`let` can be used with destructuring."
Reader focused: "You can use `let` with destructuring."
Describing the PL: "FooLang supports destructuring with `let`."
Anyone have opinions or best practices?
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.