home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #3 / NN_1993_3.iso / spool / comp / object / 5052 < prev    next >
Encoding:
Internet Message Format  |  1993-01-25  |  3.4 KB

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