From: Arlen Cuss Date: 2008-04-19T21:09:53+09:00 Subject: Re: Included in Kernel, yet won't show up in `C::ancestors'? ------=_Part_6795_7284345.1208606992984 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline Hi Peter, On Sat, Apr 19, 2008 at 9:52 PM, Calamitas wrote: > You've bumped here into what some people call the double inclusion > problem or the dynamic inclusion problem. With modules in modules, the > order of the inclusions matters. > > The reinclusion of Kernel in Object doesn't result in it being > included twice (Ruby tries to prevent that from happening), but it > does update the recursive inclusion. > > So basically, Kernel is nothing special in this regard, except that by > its predefinition it resulted in a different inclusion order than your > other test cases. Amazing! Thank you very much! You answered my (rather unnecessarily difficultly worded) question perfectly! It is somewhat comforting to know this is an implementation detail. HTH, > Peter > Warmest thanks and regards, Arlen ------=_Part_6795_7284345.1208606992984--