The first question is: "What is an object?"

Ruby Draft Specification answers the question, also. Sec.6.1 on the
document says:

---
6.1 Objects

An object has states and a behavior. An object has a set of bindings
of instance variables (see 6.2.2) as one of its states. Besides the
set of bindings of instance variables, an object can have some
attributes as its states, depending on the class of the object. The
behavior of an object is defined by a set of methods (see 6.3) which
can be invoked on that object. A method is defined in a class, a
singleton class, or a module (see 6.5).

Every value directly manipulated by a program is an object. For
example, all of the following values are objects:

 -=88 A value which is referred to by a variable (see 6.2);
 -=88 A value which is passed to a method as an argument;
=88 - A value which is returned by a method;
 -=88 A value which is returned as the result of evaluating an
expression (see Clause 11), a statement (see Clause 12), a
compound-statement (see 10.2), or a program (see 10.1).

Other values are not objects, unless explicitly specified as objects.
---

Regards,

2010/11/11 Eva <eva54321 / sina.com>:
> I'm also switching from perl and php.
> I'm not sure in ruby what's an object.
> It seems each instance of a class is an object, is it?
>
> Thanks.

--=20
NOBUOKA Yuya