home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!spool.mu.edu!agate!doc.ic.ac.uk!uknet!gdt!aber!fronta.aber.ac.uk!pcg
- From: pcg@aber.ac.uk (Piercarlo Grandi)
- Newsgroups: comp.object
- Subject: Re: A Pre-Release FAQ
- Message-ID: <PCG.93Jan4044003@decb.aber.ac.uk>
- Date: 4 Jan 93 04:40:03 GMT
- References: <1992Dec29.042355.10967@netcom.com> <TMB.93Jan3230907@arolla.idiap.ch>
- Sender: news@aber.ac.uk (USENET news service)
- Reply-To: pcg@aber.ac.uk (Piercarlo Grandi)
- Organization: Prifysgol Cymru, Aberystwyth
- Lines: 49
- In-Reply-To: tmb@arolla.idiap.ch's message of 3 Jan 93 23: 09:07 GMT
- Nntp-Posting-Host: decb.aber.ac.uk
-
- On 3 Jan 93 23:09:07 GMT, tmb@arolla.idiap.ch (Thomas M. Breuel) said:
-
- "somebody"> [ ... definition of "object" ... ]
- "somebody"> (called a class) defining its structure and operations
- "somebody"> (called methods) which may be performed on the object.
- "somebody"> Classes also define inheritance for objects.
-
- Let's continue this jeu de massacre :-) I just want to show that it is
- *very* difficult to provide consistent and informative definitions.
-
- tmb> Bad start. Variables are names for objects, they are not objects
- tmb> themselves.
-
- Uhmmm. In _pure_ OO languages variables *are* objects, because
- *everything* is an object; cfr. Smalltalk, in which variables are
- objects contained in the main Dictionary. Here you seem to be thinking
- only of compiled OO languages, like Simula 67.
-
- tmb> Furthermore, in "classical OO programming", variables
- tmb> didn't have types, only objects did.
-
- Uhmmm. Some funny people might regard Simula 67 as "classical OO
- programming", and it did enforce compile time "typing". Here you seem to
- thinking only of OO languages with latent typing, like Smalltalk.
-
- tmb> A better definition might be:
-
- One of the many floating around. But I find it insufficient:
-
- tmb> An object is a data structure
-
- Then a simple atomic value, one without internal structure, like the
- integer '42', cannot be an object. That would surprise Smalltalk users.
-
- tmb> with a set of operations defined on it.
-
- Then all data structures in whatever language are objects, because I can
- hardly imagine a Cobol programmer defining a data structure without
- defining any operations on it.
-
- tmb> An object-oriented language provides special language constructs
- tmb> for supporting or even enforcing such an association between data
- tmb> structures and operations on them.
-
- This looks more or less OK (I'm tired to pick nits now :->).
- --
- Piercarlo Grandi, Dept of CS, PC/UW@Aberystwyth <pcg@aber.ac.uk>
- E l'italiano cantava, cantava. E le sue disperate invocazioni giunsero
- alle orecchie del suo divino protettore, il dio della barzelletta
-