On Mar 9, 2011, at 7:55 PM, John Mair wrote:
> While what you've said is true for `class_eval` contexts (that they=20
> behave like constants) it doesn't explain the following behaviour, =
which=20
> the OP may or may not have been getting at:

I think you just restated the same thing I said.

One thing that you emphasized and which is confusing is that the =
singleton class notation:

class <<object
end

does *not* create a new lexical scope - nor does class_eval or =
instance_eval.

Because there is no new lexical scope from these constructs the =
interpretation of class variables doesn't change when these constructs =
are used, and that is generally not what is expected.

Gary Wright