automatic subtyping/intensions
Laurent Martelli
martelli@iie.cnam.fr
10 Feb 1999 01:04:24 +0100
>>>>> "William" == William Tanksley <wtanksle@ucsd.edu> writes:
William> On 9 Feb 1999, Laurent Martelli wrote:
>>>>>>> "Tril" == Tril <dem@tunes.org> writes:
>> >> 1 - B. Liskov and J. Wing: "A Behavioral Notion of
>> Subtyping", >> ACM Transactions on Programming Languages and
>> Systems, Number >> 16(6), pp. 1811-1841, ACM Press, 1994.
Tril> Could you summarize the content of the article? What is
Tril> meant by a "behavioral notion?"
>> It means that a type A is a subtype of B if objects of type A
>> behave exactly the same way as objects of type B. This is the
>> LSP (Liskov Substitution Principle) : if a function says it
>> wants an argument of type B, you can give it an object of type
>> A, and it wont see the difference. This definition does not
>> rely on the name of understood messages but rather on their
>> semantic.
William> Does this article actually tell how to achieve this, or
William> is it just another one saying how *nice* it would be if
William> we could ...?
I haven't read it all, so I cannot tell. But it's available
online :
http://www.cs.cmu.edu/afs/cs/project/venari/www/subtype-toplas.html
Laurent