jss@hector.UUCP (Jerry Schwarz) (02/28/88)
In article <23134@ucbvax.BERKELEY.EDU> serge@berkeley.edu (serge) writes: > This issue (and others) could be addressed if the method >definition/invocation syntax was > > method(x, y, z ...); > >instead of > x.method(y, z ...); > It already exists in C++. It's called overloaded functions. It is one of the strengths of C++ that it supports other programming paradigms than "objected oriented". The principles which determine whether a particular operation ought to be a member or a global function have not been well articulated yet. As people gather experience with C++ I hope a consensus will emerege. What really is on my mind is that I have gotten frustrated by the assumption that people seem to make frequently in this group that C++ is "Object Oriented C". C++ does have inheritance (which is what distinguishes "Object Oriented" from other approaches) but it also has features such as overloading, casting operators constructors/destructors that support other paradigms. C++ without inheritance would certainly be less useful, but it would still be a significant extension of C. Jerry Schwarz
jima@hplsla.HP.COM ( Jim Adcock) (03/01/88)
| What really is on my mind is that I have gotten frustrated by the | assumption that people seem to make frequently in this group that C++ | is "Object Oriented C". C++ does have inheritance (which is what | distinguishes "Object Oriented" from other approaches) but it also | has features such as overloading, casting operators | constructors/destructors that support other paradigms. C++ without | inheritance would certainly be less useful, but it would still be a | significant extension of C. Well, I don't know. It seems like half the people who haven't programmed in C++ claim it ISN'T Object-Oriented because of ABC, and the other half who haven't programmed in C++ claim it IS Object-Oriented because of XYZ, so MAYBE C++ is hitting the right balance :-) Too bad these people never seem to get around to sitting down and TRYING c++. I know a lot of people who spent the last couple years writing code in "pure" Objective-C, and probably less than 5% of the code is REALLY "Object-Oriented." So it seems to me the biggest c++ wins, in order are: 1) type checking 2) modular design 3) inheritance 4) dynamic binding 5) operator overloading 6) etc. ....