home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #3 / NN_1993_3.iso / spool / comp / object / 5022 < prev    next >
Encoding:
Text File  |  1993-01-23  |  3.0 KB  |  60 lines

  1. Newsgroups: comp.object
  2. Path: sparky!uunet!charon.amdahl.com!netcomsv!netcom.com!objsys
  3. From: Bob Hathaway <objsys@netcom.com>
  4. Subject: Re: Re: FAQ  Part 1 (of 2) [ polymorphism or latent typing? ]
  5. Message-ID: <1993Jan23.062235.25970@netcom.com>
  6. Sender: objsys@netcom.com (Object Systems)
  7. Organization: Object Systems
  8. References: <PCG.93Jan20002119@decb.aber.ac.uk> <1993Jan22.004420.16674@netcom.com> <KERS.93Jan22101155@cdollin.hpl.hp.com>
  9. Date: Sat, 23 Jan 1993 06:22:35 GMT
  10. Lines: 48
  11.  
  12. In article <KERS.93Jan22101155@cdollin.hpl.hp.com> kers@hplb.hpl.hp.com (Chris Dollin) writes:
  13. >In article ...Bob Hathaway <objsys@netcom.com> writes:
  14. >
  15. >   Since Strachey defined parametrically polymorphic
  16. >   functions (functions parameterized by objects of different types), the
  17. >   formal parameters assume many forms and can be referred to as polymorphic.
  18. >
  19. >Yes; and formal parameters are not objects. (Digression to meta-discussion
  20. >about how the compiler might treat the code would be irrelevant.)
  21.  
  22. Actually, in C++ formals are objects.  As I already discussed, parameter
  23. assignment is considered an initialization of a declaration, an object
  24. declaration.  If the declarator specifies a reference or pointer *object*, this
  25. object is polymorphic.  If you want to argue that in some languages, such as
  26. Smalltalk, that names or entities are not objects but denote them, thats a
  27. subtle difference, since pointers and references (or the names or entities)
  28. *are* objects in some languages, simply objects that denote other objects.
  29. You won't be able to program in languages with pointers if you don't
  30. understand this.  Anyway, I see the point that the denoted objects are the
  31. ones of *primary* interest, and perhaps I should change my definition to
  32. emphasize that the references are polymorphic and not the interesting (?)
  33. objects themselves (sorry piercarlo).
  34.  
  35. >   I think you're the one inflicting confusing terminology.  Everyone in recent
  36. >   history seems to define polymorphism as a property of objects (Stroustrup,
  37. >   Meyer, Booch, ...) 
  38. >
  39. >I think this is because you have conflated the notions of ``objects'' and
  40. >``variable'' (or reference, or pointer, or whatever).
  41.  
  42. This is completely wrong because it is out of context.  Piercarlo was arguing
  43. that either procedures (??) or objects "becoming" other objects defines
  44. polymorphism, and that is what I was disagreeing with.  He argued against
  45. Meyer, Booch, and me completely - names, entities, objects and all - stating
  46. our intention of polymorphism is wrong and should be referred to instead as
  47. "latent typing".  I hope I've presented enough information to show *we* are
  48. correct!  And his anachronistic views on the functional implementation of the
  49. object model and then using a functional view of values on top IMHO seems to
  50. have confused the ganoozga's out of everyone in this newsgroup.  At least
  51. I push the object model [and history has shown both you and piercarlo often
  52. haven't, if I may take sides].
  53.  
  54. Regards,
  55. bob
  56. objsys@netcom.com
  57.  
  58. I'm still wondering if there are any other true OO believers out there, its
  59. getting lonely...
  60.