From: Chris Pine Date: 2003-04-25T02:09:46+09:00 Subject: Re: Subject: Re: [ANN] Ruby.shop ----- Original Message ----- From: "Hal E. Fulton" True. I'm still inclined to distinguish on the basis that when you inherit, you (can) get instance data, whereas when you mix in, you typically don't. As I think about this, though, even that may be a false distinction. What do you think? ---------------------------- Not to get too philosophical, but... On the Ruby side of things, I think the distinction is false. Modules are basically a form of multiple inheritance. They can do anything with instance data that classes can. On the human side of things, however, there's an important distinction. Matz made modules and disallowed multiple inheritance. These are largely (only?) conceptual distinctions, but that doesn't mean they aren't important. Even if modules are just classes without `new' (which, BTW, we could easily add), we *use* them differently. So, on the Ruby side, the distinction seems false. On the human side, the distinction seems important. It seems to me (just one guy's opinion) that coloring modules a different color, but making the arrows all the same color, expresses this well. Chris