Re: OOPs! James is confused again!

From: James <jraustin1_at_hotmail.com>
Date: 14 Jun 2002 21:16:25 -0700
Message-ID: <a6e74506.0206142016.34e9d96b_at_posting.google.com>


> You still have:
> The object is an instance of an instance of an instance ad infinitum.

Yes that is correct, this is why my object model differs from the current conventional oo model.

> Not every oo model uses all of the following terms, but the following is as
> close to a consensus as I think you will find:
>
> An object class (or type) comprises a set of object values (or just plain
> values) and their associated methods (or operations).

XDb's definitions differ,
The class is an object that can hold data of any type. The class's "set of object values" are also objects that can hold data of any type.

> An object variable is simply a variable as understood in programming
> languages. At any given instant in time, a variable has a value (sometimes
> called a state) and can have different values at different times.

XDb's concept differs here also

> A constructor initializes the value of a variable.

XDb's object's data can be left uninitialized. In which case it will inherit the data from the first ancestor class whose's data is initialized.

> An object instance is a dynamically allocated object variable.

ok

> Instantiation refers to the operation that dynamically allocates memory for
> a variable and that initializes its value by calling its constructor.

What does it initialize it to?

> Since my interest is in the logical data models of database management
> systems, I prefer to ignore the purely physical distinctions:

Yes, I think it is much easier for us to iron-out difference at the logical model. By the way what is a logical vs physical model?

> A type (or class) comprises a set of (object) values and their associated
> operations (or methods).

In XDb's "type (or class)" is an object. The "values" are also objects.

Each XDb object has many operator, here are some of them Addr_getA, AddToDescInsts, AliasDef_get, Child_getByPath, ChildFirst, ChildLast, ChildsDesc_walk, CInstFirst, CInstLast, Cls, CutPaste, CSibNext, CSibPrev, CopyPaste, Data_getAsNumber, Data_getAsStr, Data_setAsStr, Data_getAsStrForTree, DataTypeId_get, Db_set, Del_alsoFromParsInsts, Delete, Fldr_get, Id_get, Inst_add, Inst_findByData, Inst_getByPath, InstPkg_add, InstsDesc_walk, IsAlias, IsAncestCls, IsAncestClsOrEq, IsAncestPar, IsAncestParOrEq, IsDataTypeNumerical, IsDataTypeSummable, IsDescChild, IsDescChildOrEq, IsDescInst, IsDescInstOrEq, IsEntity, IsFolder, IsIncRef, IsProp, IsPropStatic, IsPropVirtual, IsRef, IsSysObj, LevelsToACls_get, LevelsToAPar_get, ObjTypeId_get, Parent, Prop_childFirst_get, Prop_childFirst_set, Prop_get, PropInAncestCls, PropInAncestPar, PropType_toggle, Qty_get, Qty_set, QtyX_get, SibNext, SibPrev, XmlFile_create.

> At any given instant in time, a variable has a value (sometimes called a
> state) and can have different values at different times.

Each XDb object can store data of various types. Received on Sat Jun 15 2002 - 06:16:25 CEST

Original text of this message