On Tuesday 09 August 2005 17:36, Andy Leszczynski <leszczynscyATnospam.yahoo.com.nospam> <> (<[EMAIL PROTECTED]>) wrote:
> wikipedia > (http://en.wikipedia.org/wiki/Python_programming_language#Object-oriented_programming) > says: > """ > Python's support for object oriented programming paradigm is vast. It > supports polymorphism [...] fully in the Liskov substitution > principle-sense for all objects. > """ > > Just wondering if it is true statement. It's true if not particularly insightful. "What is wanted here is something like the following substitution property [6]: If for each object o1 of type S there is an object o2 of type T such that for all programs P defined in terms of T, the behavior of P is unchanged when o1 is substituted for o2, then S is a subtype of T." > Is not LSP more a quality of the desing of class hierachy rather then > language itslef? In a statically-typed language, polymorphism is based on the class hierarchy (through inheritance). Because Python uses dynamically-checked typing, its polymorphism is structural rather than nominative. > Comments? Discussions like these might be more appropriate for the comp.object newsgroup. -- http://mail.python.org/mailman/listinfo/python-list