Hacker News new | past | comments | ask | show | jobs | submit login

To me it seems like the perceived problems with memory management happen because of how programs are organized which is influenced in large part by the programming language used. In OOP you have a bunch of interconnected little 'objects' with different lifetimes that needs to be perfectly coordinated with one another. This is very very hard to do which is why you have RAII in c++ as a bandaid and Rust for those that have deemed the patient to be terminally ill and best put out of its misery.

Objects as an abstraction do seem useful and make sense but that is at the program level or at the very least the system level in a multi-system program. Definitely not at the data-struct + some related operations level which is what OOP languages consider them to be.

Alan Kay was right in that the big idea behind OOP is object communication but I think he got the object size wrong, message-passing doesn't seem that important when your object is a string with just a few functions attached. If instead your object is another program you are coordinating with or a different system such as your physics engine then message-passing does seem like a bigger deal.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: