For a historical note: the operating system used by old Amiga computers (“AmigaOS”) did not have full memory management as it is assumed now (except maybe for some later versions released when Amiga was no longer popular).
The CPU did not have a MMU (memory management unit), and as a consequence every process had access to all physical memory. Because of that when two processes wanted to share some information, they could just exchange pointers. This practice was even encouraged by the OS, which used this technique in its message-passing scheme.
However, this made it impossible to track which process owns which part of memory. Because of that the OS did not free memory of a finished process (or any other resource, for the fact). Freeing all allocated memory was therefore vital.