I get what the programmer is trying to say but I think the problem is when you think everything is a nail because all you have is a OOP hammer. OOP lets you wire things up in a very unnatural memory hungry way kinda way.
When you start dealing with 500,000 files in one directory and you try to do a files->getname(10)->size->to_string(). You are bound to run out of physical memory. This is probably why newer operating systems are so slow. Caching will only save you for so long.