Hacker News new | ask | show | jobs
by smt1 1920 days ago
Simula(67) definitely was the original concept/implementation of OO. Smalltalk, C++, Java, etc all derived different aspects of it.

- Main abstraction are classes (of objects).

- Concept of self-initializing data/procedure objects Internal ("concrete") view of an object vs an external ("abstract")

- Differentiated between object instances and the class

- Class/subclass facility made it possible to define generalized object classes, which could be specialized by defining subclasses containing additional declared properties

- Different subclasses could contain different virtual procedure declarations

- Domain specific language dialects

2 comments

Note Java is actually explicitly based on Objective-C, not on Simula or C++. They just removed most of the Smalltalk bits to make it faster and less scary-looking to C++ programmers.
Hey smt1, looks like your account is dead and has been for a while.
it's clearly not dead.
Actually, it might be. The comment was dead, I vouched for it, so it appeared.