> 3. This almost becomes a semantic argument. Yes, we don't "use" 
> it as a grave accent, but I still think that is what it "is." As a crude
> analogy, Ruby's inheritance operator (<) really "is" a less-than 
> sign, but is not "used" that way.

Well, there are two inheritance-related usages of "<". One is the
less-than on Partial Orders. The other is as much a less-than as the
assignment operator is an equal: it makes a class "less-than" another
class.

In Partial Orders, not only a comparison between A and B can give
"less-than", "equal", or "greater-than", but it can also give "none".
However, in Ruby's Class#<=>, "none"  is confounded with "greater-than"
(the direct relationship between Array and Hash is "none")

================

By the way (i'm drifting off-topic... argh) a trick that makes Ruby
inheritance funkier than the intended (?) Partial Order, is: 

module Foo; end
module Bar; include Foo; end
module Foo; include Bar; end
class Unf; include Foo; end
a = Unf.new

then those strange things happen:

Unf.ancestors != Unf.ancestors.uniq

Foo < Bar && Bar < Foo

This is already better than the infinite recursion I expected...



matju