Studying Hare's builtin functions for memory allocation...
If the debug tag's set allocates additional space for the pointer & size of the preceding allocation, whilst enforcing alignment to some pagesize reading from the `envp` array on startup.
If compiled against LibC it defers to its memory allocation functions.
As for the self-hosted memory allocator... `malloc` returns null for size of 0, & defers primarily to kernel-specific code for massive allocations.
1/2?