Le 30.08.2013 15:11, Jerry Stuckle a écrit :
On 8/30/2013 2:00 AM, Joel Rees wrote:Okay, so, for you, supporting inheritance and polymorphism at run-timerather than at compile time is not sufficiently OOP. And I don't particularly care about that distinction. I'm fine with ending the discussion there. -- Joel ReesYou keep claiming it can be done, but have done nothing to show how it can be done. So all I can assume is you cannot support your statement, because it can't be done. Don't worry - I've heard similar statements over the years from others who don't understand OOP. None of them have been able to support their statements, either. Jerry
Here is what you defined for inheritance and polymorphism: ============ 3. Inheritance: the ability to extend an existing class, to provide additional or different functionality via additional messages in the derived class. Inheritance takes advantage of the similarities in thebase an derived classes. The base class has no knowledge of the derived
class and, in fact, may not even know it is being used as a base class. Additional classes can be derived from the original base and derived classes with no change to the existing code. This cannot be done in C. 4. Polymorphism: the ability to send messages to a derived class object when you believe you have an object of the base class. This allows functions to operate on any class in the derived hierarchy, while onlyhaving to worry about the messages defined in the base class. This also
cannot be done in C. ============ Note that we agree on those definitions.Now, can you explain why the link I provided does not meet those requirements?
For now, except saying to everyone that 1) they do not understand OOP and 2) you teach it from 25 years, you never gave any example of things we could do in any OOP language that we could not make in C according to your definition of OOP (on which I agree, again) not you destroyed the source code pointed by the link I gave.
Oh, and, you also said something which implied that I said that SDL is a language, which is something I never said. Well, to be more precise, the functions and structures I referred to where obviously owned by libsdl1.2-dev (to write the Debian package's name) which is a library. So, you avoided replying to real arguments with yours, and you even used a straw man to discredit me?
I will refrain my envy of irony here, instead I will be direct: I have seen people which were using a lot the argument of being older than me to convince me that I was wrong. They never convinced reality, when what they did failed, why my solutions were working fine. Wisdom and knowledge are not only a matter of age and teaching. Including teachers. This is the reason why I rarely accept an argument if it is not correctly built: explanation + example, so that it can be countered or not.
While I am at it, let me say you that, a machine, in common language (I'm not very good with mathematics), have internal states that you do not need to know to use it's function. I have no idea about all the states of my car when I am driving. For example, I do not know, or need to know, the states of the spark plugs.