Why does having. GC mean not thinking about memory? I think about memory constantly in GC languages because I still want it to perform well.
The biggest difference is the failure modes. If I'm not thinking about memory, my RSS is higher or a bit of extra CPU time goes to GC. Both of those are radically better than UAF or buffer overruns. Good trade IMO.
I didn't say that. But if you think about memory then GC does more harm than good because you have no help from the language.
A GC is not the only fix for UAF and buffer overruns...