On Wednesday, January 22, 2003, at 05:09 , David Garamond wrote:

> the pickaxe defines Principle of Least Surprise as "things work the way 
> you expect them to, with very few special cases or exceptions." i know 
> this doesn't necessarily mean "things work the way you expect them _in 
> other languages_", but i notice that ruby seems to surprise many people 
> with regard to class variables.
>
> may i suggest that we pick a new term for ruby's "class variables" in 
> the documentation? "class & subclass variable", "classdown variable", 
> "shared class variable", ...

i'm guessing from those names, that your surprise is that class 
variables get inherited...

why is this surprising? class methods get inherited, why shouldn't class 
variables?

> even the downloadable pickaxe book has this in the "Classes, Objects, 
> and Variables" chapter:
>
>  "Class variables are private to a class and its instances."

perhaps they should add "and any other classes that inherit that it" for 
clarity's sake.


-Justin White

just6979 / yahoo.com
http://tin.2y.net/
AIM: just6979