home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!pipex!unipalm!uknet!gdt!aber!fronta.aber.ac.uk!pcg
- From: pcg@aber.ac.uk (Piercarlo Grandi)
- Newsgroups: comp.object
- Subject: Re: FAQ Part 1 (of 2) [ a bit of polemic ]
- Message-ID: <PCG.93Jan25213231@decb.aber.ac.uk>
- Date: 25 Jan 93 21:32:31 GMT
- References: <PCG.93Jan14154212@decb.aber.ac.uk> <1993Jan15.033713.27130@netcom.com>
- <PCG.93Jan19231409@decb.aber.ac.uk> <1993Jan21.024452.6085@netcom.com>
- Sender: news@aber.ac.uk (USENET news service)
- Reply-To: pcg@aber.ac.uk (Piercarlo Grandi)
- Organization: Prifysgol Cymru, Aberystwyth
- Lines: 59
- In-Reply-To: objsys@netcom.com's message of 21 Jan 93 02: 44:52 GMT
- Nntp-Posting-Host: decb.aber.ac.uk
-
- >>> On 21 Jan 93 02:44:52 GMT, objsys@netcom.com (Bob Hathaway) said:
-
- Hathaway> "Simply put, an object is a variable"
-
- Hathaway> Actually, I changed the above to "instance" instead of
- Hathaway> "variable" and all should be well.
-
- On this I would like to speculate. Your original text contained too many
- times the word "variable" out of place to make me think it was just a
- typo. Many times I have had the impression that your rather terrible
- terminology covers a fairly intuitive (but not very deep) understanding
- of this field.
-
- In the particular case my impression is that you meant 'an object is a
- variable' as a deformation of the concept, that indeed appears in the
- literature, that an object is a *mutable* value/data structure, which is
- quite a different thing, but one that it is rather likely you might have
- been confused by.
-
- The "OO programming is discrete simulation" school of thoughts maintains
- that objects represent the state, associated with state access/change
- functions, of "real world" entities. In other words, that an object is
- the state vector of a (finite) state machine (the state machine
- definition is the class -- in programming terms this translates to the
- procedure/procedures instance view of classes/objects).
-
- According to this view, an object is inherently mutable, and has been
- described as such in the literature, because an immutable state vector
- is quite inconceivable in a simulation context.
-
- So I speculate that this might have been what you had in mind when you
- wrote the above definition.
-
- (let me register that even if I think that the definition of object as a
- "mutable data structure" is defensible on the grounds above, and can be
- found in the literature, I do not like it; the view that objects are the
- state vector of some state machine, precisely because this makes the
- notion of "frozen" state, i.e. a constant/immutable object, rather
- unnatural, when instead it is quite useful).
-
- Hathaway> Also, I seem to recall you trying to give an example where a
- Hathaway> hierarchical class structure was not necessary and failed
- Hathaway> miserably
-
- What I remember is being challenged to give examples where a
- hierarchical class structure is not *sufficient* and me pointing out
- that I need not to, as the limitations of hierarchical data
- classification schemes have been well documented in database textbooks
- for over a dozen years (the network and relational data models, and the
- need to have non hierarchical data dictionaries too, have been around
- for a dozen years).
-
- Hathaway> Anyway, my main point was to ignore these superflous comments
- Hathaway> and get on with things, not to heat them up, so no more.
-
- This is against all netiquette as clearly illustrated by Emily Netnews.
- --
- Piercarlo Grandi <pcg@aber.ac.uk> c/o Dept of CS
- University of Wales, Penglais, Aberystwyth SY23 3BZ, UK
-