Garbage collector does reference counting, causing circular references
to be a leak.
Mark and sweep collector would fix this. It has been proposed, but not
implemented.
The regular expression engine is powerful, but written to act recursively.
This causes stack overflows on some regular expressions. An iterative
rewrite is hard but needed.
Perl already has its own memory allocator, which knows that most
malloc() calls are for SVs, AVs, etc.
Limits on amount of memory allocatable.
Should Perl have its own swap system?
Can you reorder allocated structures for locality of reference?