https://stevelosh.com/blog/2018/07/fun-with-macros-if-let/ is an excellent post on implementing if-let and when-let macros.
It discusses the different ways you could expand the code, and ensuring the macro composes with other (Common) Lisp features.
Really useful macro too, I'm a big fan of the elisp equivalent.
miniblog.
Related Posts
Implementation chicken:
When there's an obvious feature gap in an ecosystem and everyone is waiting for someone else to write it.
I see this most frequently with OSS toolchains. Basic functionality in new programming languages is another common scenario.
Go has an os.Root API that allows you to enforce all paths are subdirectories of a given root. It fixes users accessing foo/../../../etc/passwd and similar.
Seems like a really nice solution for a relatively common problem.
I'm surprised there aren't more tools out there for starting a new project with some default config files.
There's `cargo new` but it's Rust specific and very minimal. create-react-app is React specific.
The only option I know of is cookiecutter. Surely it's a common problem?