ref counting is expensive in multi-threaded applications. Overall it would have worse performance. When it comes to predictability: deallocating a linked list (for instance) would have to deallocate all of the elements. Dealing with loops is also not simple, either.
raverbashing · · focus · HN ↗
(though of course a swap is a swap - but you can "trigger" it depending on your memory or file access pattern)
xxs · · focus · HN ↗
raverbashing · · focus · HN ↗