Topic: object-oriented objects

topics > computer science > programming > Group: object-oriented programming

abstraction in programming language
attribute-value pairs as information
data record
data type as a set of values and a set of operations
heap memory management
immutable files and data
implementation of Thesa data objects
initialization of data
object modification
object-defined names
object-oriented fields
objects as a set of attributes
pointers to data
pronoun reference
software models of reality
uniform data model
uniform reference to data


An object in object-oriented programming combines data and procedures. It store local data while its class stores class data and procedures. The behavior of an object is determined solely by its class membership and the values of its local variables.

References to an object are uniform. Objects are created. They are passed around by uniform reference. When the last reference disappears, they can be garbage collected. (cbb 1/90)

Subtopic: object as identifier up

Quote: an object is anything that has a unique identifier; e.g., an immutable tag or a memory address [»taivA4_1993]
Quote: each object has a identity or name, data or state, and behavior
Quote: while a data object exists, it is passed around by uniform reference; procedures do not store the objects themselves
Quote: objects created by expressions and destroyed when last reference disappears; accessed by uniform reference throughout the system [»ingaDH8_1981a]
Quote: all Amoeba objects are named and cryptographically protected by capabilities; e.g., access a file by a capability [»vanrR10_1988]

Subtopic: objects as concrete abstractions up

Quote: objects are things drawn from the problem/solution space; a class describes a set of common objects [»boocG_1999]
Quote: abstractions either have an "eternal" existence (values, concepts) or a temporary, tangible existence (objects) [»taivA4_1993]
Quote: a language should include objects and a uniform means of referencing them [»ingaDH8_1981a]
Quote: a record represents a physical or conceptual object; a field and field name represents a property [»wirtN6_1966]

Subtopic: automatic storage up

Quote: to be object-oriented, a computer must provide automatic storage management [»ingaDH8_1981a]

Subtopic: object-cache up

Quote: the SunOS slab memory allocator retains the state of complex objects between uses; object-coloring for global cache utilization; space efficient and fast [»bonwJ6_1994]
Quote: object cache is up to 5x faster; preserves the invariant portion of an object's initial state [»bonwJ6_1994]

Subtopic: objects as history over time up

Quote: objects exist; their life histories consist of the events they participate in; can be anything with a history [»shawC7_1987]
Quote: since an object's state changes with time, an object exists 'in time'; unlike a value [»maclBJ12_1982]
Quote: Simula classes are non-nested blocks, i.e., endure over time [»dahlOJ_1972a, OK]

Subtopic: object as context up

Quote: instead of global data, use objects to pass context; typically as parameters to the object's constructors

Subtopic: object as meaning up

Quote: a datum is a set of bits that has a meaning; an object is a datum whose parts are defined by language rules; each field of an object holds a datum [»steeGL10_1998]

Subtopic: object as data and behavior up

Quote: in paper solutions, entities have state and they respond to requests for action; but no use of inheritance or polymorphism; object-oriented is not natural [»paneJF2_2001]
Quote: can define methods, variables, and extensions as objects in their own right [»liebH11_1986]
Quote: an object encapsulates private state information, operations that manipulate the data, and an optional thread of control [»chinRS3_1991]
Quote: within an object, data in private variables and procedures in methods; localizes the data/program distinction [»robsD8_1981]
Quote: an object-oriented system has a single entity, the object, to represent both information and its manipulation [»robsD8_1981]
Quote: in object-oriented programs, the system's components are objects with properties and actions that transform the system's state [»nygaK10_1986]
Quote: computing is intrinsic to objects; invoked by messages; only message transmission occurs outside of objects [»ingaDH8_1981a]
Quote: most abstractions in XDE were objects represented by a record with procedure variables to implement its operations [»sweeRE7_1985]
Quote: fishdeath.cause can be a procedure cause operating on argument fishdeath [»palmJ5_1973, OK]
Quote: in Simula, fishdeath.cause.countermeasure.cost yields a value according to class methods [»palmJ5_1973, OK]
Quote: Lisa treats data as concrete objects with operations at any time; unlike current systems with modes [»willG2_1983]
Quote: Ocra objects do not contain processes; they contain data structures and operation definitions; no inheritance [»taneAS8_1992]
Quote: Simula's class and object was a generalization of Algol's block and block instance [»ichbJD_1972]
Quote: an object is a data record of fields and a method suite of procedures that accept the object as a first argument [»cardL_1991]
Quote: an object type determines a prefix of the data record and method suite; subtypes may define additional fields and methods
Quote: in Smalltalk, every entity is an object which has a class and memory and sends/receives messages [»goldA3_1976]
Quote: a Self object holds its own behavior instead of using a class; increases flexibility [»smitRB10_1995]
Quote: a capability is a pointer to a computing object and the actions that the computation may perform on that object; e.g., segment capabilities for reading, writing, and executing

Subtopic: immutable objects and cloning up

Quote: Cosmos has immutable objects that are transformed into new objects by atomic actions [»walpJ6_1988]
Quote: a Kevo object defines a clone operation to duplicate the object, and a new operation to create an initialized object. The programmer selects which variables to duplicate or initialize [»taivA11_1993]

Subtopic: import/export up

Quote: object-orientation includes moving arbitrary data types transparently across computing barriers
Quote: a stream function creates a stream by allocating memory and setting function pointers, input stream, and initial data [»stoyJE3_1972]

Related Topics up

Topic: abstraction in programming language (47 items)
Topic: attribute-value pairs as information (57 items)
Topic: data record (57 items)
Topic: data type as a set of values and a set of operations (16 items)
Topic: entities (20 items)
Topic: heap memory management (33 items)
Topic: immutable files and data (59 items)
Topic: implementation of Thesa data objects (27 items)
Topic: initialization of data (45 items)
Topic: object modification (10 items)
Topic: object-defined names (15 items)
Topic: object-oriented fields (28 items)
Topic: objects as a set of attributes (39 items)
Topic: pointers to data (55 items)
Topic: pronoun reference (23 items)
Topic: software models of reality (24 items)
Topic: uniform data model (19 items)
Topic: uniform reference to data
(34 items)

Updated barberCB 10/04
Copyright © 2002-2008 by C. Bradford Barber. All rights reserved.
Thesa is a trademark of C. Bradford Barber.