If you need to allocate dynamic memory in C, you use malloc() and free().
The API is very old, and while you might want to switch to a different implementation,
be it jemalloc, tcmalloc, or mimalloc,
they mostly copy the interface.
It makes sense that they do that – they want to be a mostly drop-in replacement,
but it’s still unfortunate because malloc() and free() are a bad API for memory allocation.
Let’s talk why.