home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #18 / NN_1992_18.iso / spool / comp / object / 3241 < prev    next >
Encoding:
Internet Message Format  |  1992-08-17  |  3.5 KB

  1. From: kers@hplb.hpl.hp.com (Chris Dollin)
  2. Date: Tue, 18 Aug 1992 10:04:34 GMT
  3. Subject: Re: Re: Type Conformance and Inheritance (was O.M() versus M(O) notation)
  4. Message-ID: <KERS.92Aug18110434@cdollin.hpl.hp.com>
  5. Organization: Hewlett-Packard Laboratories, Bristol, UK.
  6. Path: sparky!uunet!usc!sdd.hp.com!hpscdc!hplextra!otter.hpl.hp.com!hpltoad!cdollin!kers
  7. Newsgroups: comp.object
  8. References: <1992Aug5.162329.22871@ucunix.san.uc.edu> <PCG.92Aug16184526@aberdb.aber.ac.uk> <2+0md-p.objsys@netcom.com>
  9. Sender: news@hplb.hpl.hp.com (Usenet News Administrator)
  10. Lines: 69
  11. In-Reply-To: Bob Hathaway's message of Tue, 18 Aug 92 03:23:46 GMT
  12. Nntp-Posting-Host: cdollin.hpl.hp.com
  13.  
  14. In article ... Bob Hathaway <objsys@netcom.com> writes:
  15.  
  16.    No it is not.  There is nothing symmetrical about pushing an element onto
  17.    a stack since the two objects are not equal gramatically.  O.M ...
  18.  
  19. I don't see what the grammatical status of an object has to do with anything.
  20. Surely we're discussing *meaning*, not *notation*, here, and PGs point is
  21. exactly that the asymmetry of the O.M(...) notation *encourages* a
  22. corresponding but irrelevant semantic asymmetry.
  23.  
  24.    is imperative (with an IE,) showing clearly the Object (O) to be the
  25.    receiver (or doer) of the command (M) and parameters to be objects.
  26.  
  27. I think it's M that's the "doer" and O,(...) are the parameters.
  28.  
  29.    A stack has a push "action" so the stack is the doer of the action and
  30.    making this explicit should help.  
  31.  
  32. But this is just one interpretation, right? Stacks don't "have" push actions as
  33. a matter of Natural Law; it's just one way of carving the computational cake.
  34. We can just as well say that pushes "have" stack variants.
  35.  
  36. Now, in the case of stacks and pushes, the stack *changes* [assuming we're in
  37. an imperative context; in something like Haskell or Axis, the push just gets
  38. you a new stack, and nothing changes, not ever, not even a bit.]. You could
  39. chose to indetify the "doer" with the thing subject to change ("objects know
  40. how to do things to themselves"). An odd model, this, when normally one expects
  41. the doer to be the one *not* suffering the effect!
  42.  
  43. Also, if several objects (parameters) are affected, this criterion breaks down.
  44. What about moving an object from one stack to another? Why should the move
  45. "message" be sent to one of them, rather than the other? You may argue that
  46. "move" isn't a real primitive on stacks, but who are you to argue with my
  47. analysis of a problem domain? [Perhaps I shouldn't call them "stacks", but the
  48. point remains.]
  49.  
  50.    If this isn't so clear, then go imperative without an explicit receiver of
  51.    M. 
  52.  
  53. By which I presume mean ``try the symmetic notation''.
  54.  
  55.    If it is, you're obfuscating the reciever which will be to the detriment of
  56.    understanding.  
  57.  
  58. Well, the second part follows from the first, because of the meaning of
  59. ``obfuscation'', but I don't think it's true that one is obf. the receiver,
  60. because I think the receiver is the message [at least for the purposes of this
  61. note]. 
  62.  
  63.    Also, whats with this "only overloading on the first parameter" stuff?  
  64.    Have you heard of multi-methods or more simply "dynamic method selection"? 
  65.  
  66. Surely this is the point of PGs postings; given multi-methods, why on earth
  67. should the invocation syntax specially distinguish one object out of the
  68. several supplied?
  69.  
  70.    I can't make sense of it.
  71.  
  72. Of multi-methods or of the discussion so far?
  73.  
  74. Remember, The Real World Is Not Object-Oriented.
  75.  
  76.  
  77.  
  78.  
  79. --
  80.  
  81. Regards,                    | "I always prefered Sherlock Holmes to Dan Dare"
  82. Kers.                       | Nathan Spring, in BBC2's _Star Cops_.
  83.