'''object''' is perhaps the most overloaded word in computing, with the common denominator being the idea that an object is a concrete [instance] of some type of thing in the context of some larger system. ** Description ** At the machine level, a region of memory exposed to a program is called an '''object''', and assembly programs express operations directly on these regions. At the next level up, languages like [C] express operations on values and their locations in memory, but also express a type for each value such as "character", "integer", "float", and "array", and constrain operations on the basis of these types. In [The C Programming Language Kernighan and Ritchie%|%The C Programming Language], the first use of the term "object" is in reference to these primitive types. At this level, the concept of [class] also begins to arise, with the various numeric types having a certain degree of compatibility with each other. In the context of compiling source code to machine code, [C], an object is an instance of a compiled unit of source code. From this meaning comes the term, '''shared object''', also called a '''[dll%|%dynamic link library]''', which is a compiled code object that can be linked into a program at runtime. In [object orientation%|%object-oriented programming], which refers to a set of [programming language] features which divide the data handled by a program up into discrete units and associate each unit with a particular set of '''[procedure%|%procedures]''' responsible for collaborating to manipulate the data that comprises the unit, each association is called an '''object'''. The object provides the '''[interface]''' to the unit. Typically, each object is either instantiated from a [class] or cloned from a [Prototype Pattern in Tcl%|%prototype]. Such an object is primarily concerned with managing the data that represent the thing being modeled, but programmers often misuse [object orientation%|%object-oriented] features as if they provided a way to model the thing itself instead of the data that represents it. For example, a '''method''' is often misunderstood as '''implementing the behaviour of the object''', instead of being correctly understood as '''providing a means for acting on the data''' the object is an interface for. In the [C] implementation of Tcl, a [Tcl_Obj] is a data structure that represents a a Tcl value. ** See Also ** [Object Orientation]: [http://en.wikipedia.org/wiki/Object_%28computer_science%29%|%Wikipedia]: <> Concept | Glossary | Object Orientation