On Thu, 2006-01-26 at 19:25 +0900, Alex Combas wrote: > Here is my question: Does having class variables (@@) and > class methods (MyClass.foo) destroy the whole OO design concept? > I've always thought of classes like blueprints, and objects like, well, objects > made from the blueprints. So thinking of classes as objects themselves > that have :attributes, @@variables, and def methods kind of wrecks > my "blueprint" metaphore. In your terms I'd probably say that Classes are Objects that represent a blueprint for other Objects. All Objects, including Classes, are built from a Class blueprint. All Objects, including Classes, can have additional capabilities added to their blueprint, and can get new capabilities custom made after they leave the factory, too. And I'd ignore @@vars, what I've seen so far suggests it's the best thing to do most of the time :> -- Ross Bamford - rosco / roscopeco.REMOVE.co.uk