3 ms·
I don't see where the gotcha is in 1 and 2. The meaning is pretty clear if you're familiar with the two languages. Simula is a procedural Algol-style language t
by djur 12y ago
I don't see where the gotcha is in 1 and 2. The meaning is pretty clear if you're familiar with the two languages. Simula is a procedural Algol-style language that includes a class-based OO system, analogous to Java or C++ today. Smalltalk is completely based on message-passing. The distinction between the two approaches is reminiscent of the ML/Haskell divide (strict+impure vs. lazy+pure).
3 and 4 is a statement of principle _preceded_ by an acknowledgement that the definition the book uses is not universal. 5 seems uncontroversial to me; the need for automatic memory management is a secondary outcome of other aspects of object-oriented systems, not a primary quality. And 7 doesn't seem to follow from the quoted excerpt.
All the quotes are from a single 33-year-old copy of Byte magazine. They don't conflict nearly as much as the commentary implies. Together they suggest that an idealized OO system consists strictly of objects passing messages, but that other languages blend OO and procedural features. The same is true today.
EDIT: retracted an unnecessary implication.