From: Chad Fowler Date: 2003-11-21T07:40:14+09:00 Subject: Re: "stereotyping" (was: Re: Strong Typing (Re: Managing metadata about attribute types) ) On Fri, 21 Nov 2003, Yukihiro Matsumoto wrote: # # In summary, "interface checking" (not static type checking we had seen # before) is a good thing. But I'm not sure it's good enough to put in # the future Ruby, where API document might help, and where we have two # challenges above. # matz, how do you define "interface"? In sean's case, class and/or module were sufficient to define interface. This is majorly what I take issue with. If "interface" is really a collection of "respond_to?" requirements, then I can start to stomach the idea of it being added to Ruby (I believe you were proposing something similar in your RubyConf presentation). Have a look at Sean's RCR at RubyGarden. It includes the following: class MyClass end The above class implicity declares "I implement the MyClass interface." Pretty simple. He goes on to say the same re: inheritance and module inclusion. Do you consider these to define "interface"? I don't. Thanks, Chad