From: Chris Moline Date: 2001-04-28T19:40:03+09:00 Subject: [ruby-talk:14372] Re: SV: Re: how change instances class On Sat, Apr 28, 2001 at 01:36:16PM +0900, Hal E. Fulton wrote: > > Let me give an example of a (maybe) natural class-change operation, in > human > > dialog context: (This is purely fictional. I include it only in case that > > someone might be interested) > > > > Language input .......Human Language Interpreter does: > > I see something => instance of Something > > It is a person => change class of the instance to Human > > It is a woman => mix-in Female > > No, it is a man => un-mix Female and mix-in Male > > He looks Asian => mix in Asian > > He is smiling => indicate that smile is active > > It is Haruki Murakami! => check if there is merge viloations, if not then > > merge the instance into the Haruki Murakami instance, which does already > > exist in the knowledge bank. > > > > Is the smiling person an author? => Yes. And a famous one too. [references > > to the mentioned person are changed to Haruki Murakami instance, > > which has an Author mix-in] > > > > Is Haruki Murakami smiling? => Yes, he is smiling. [information merged > > from the temporary instance into the Haruki instance] > > > > Does Haruki Murakami exist? => Yes, [in the knowledge base, he is > > represented by an instance of subclass of Something] > > > > I find this example fascinating. It does sound difficult to implement, > though... I am a newbie in matters like this so maybe I have it wrong but... it sounds like we already have this. Namely, I think that this is analogous to having an instantiated object whose type we don't know. i.e. I see something the object already exists and now we are going to find its type It is a person we have retrieved some information about its type. Perhaps by a person? method? It is a woman we ran object.woman? and it returned true. No, it is a man someone needs to fix the woman? method. Somehow or other we found out it was actually of type Man. and so on...