From: "Hal E. Fulton" Date: 2003-04-24T04:57:48+09:00 Subject: Re: [ANN] Ruby.shop ----- Original Message ----- From: "Chris Pine" To: "ruby-talk ML" Sent: Wednesday, April 23, 2003 2:38 PM Subject: Re: [ANN] Ruby.shop > ----- Original Message ----- > From: "Hal E. Fulton" > > By the way: The "Ruby Core" poster is known to > be inaccurate. Feel free to send me corrections. > I'll get around to fixing it soon. > ---------------------------- > > Well, I find the red arrows (especially the "Class --> Module --> Object --> > Class" loop) a little confusing. What is a red arrow from `a' to `b' > supposed to mean? > > a.superclass == b > b.superclass == a > a.class == b > a.kind_of?(b) > > These are all very different things! I don't think we should confuse the > `class', `superclass', and `kind_of?' relationships. (This is what my OSCON > talk is about, btw. :) That is a good point, and I can't reply intelligently on an empty stomach. I do think that 'a.class == b' and 'a.is_a? b' mean the same thing, though. (Though you don't mention is_a? above.) And b.superclass==a does *imply* that b.kind_of? a (though the converse is not true). But in this case, the arrows meant "inherits from" or "descendant is..." How one might formalize that is something I will contemplate after eating. The blue arrows, of course, mean "mixes in." Arguably the arrowhead should go the other way.