From: Martin DeMello Date: 2004-06-23T14:33:10+09:00 Subject: Re: A question about Class and Object Sam Sungshik Kong wrote: > > I think what bothers me is terminologies. > Class is an object and Object is class. > It's pretty recursive. > It would be better if we have different terms for each. > It would be better if we have different terms for each. Okay, try this. *Everything* in ruby is an object. There are certain kinds of objects that are templates for creating other objects, we call those classes. These classes form an inheritance hierarchy, at the base of which is a common template for creating any object, and this is the Object class. Now, since these templates are themselves objects, they need to be created via a template too. This template is the Class class. It is a class, since it is a template for creating objects (template objects in this case), and it is an object since the templates themselves are just objects. And conceptually it *is* recursive, since Class is both a template for creating class objects and a class object itself, but that's not a problem at the language level (it needs some bootstrapping at the *implementation* level - see http://www.ruby-talk.org/blade/104332 for an excellent description of this). martin