home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #1 / NN_1993_1.iso / spool / comp / object / 4699 < prev    next >
Encoding:
Internet Message Format  |  1993-01-04  |  2.6 KB

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