home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #18 / NN_1992_18.iso / spool / comp / lang / cplus / 12473 < prev    next >
Encoding:
Text File  |  1992-08-17  |  2.6 KB  |  51 lines

  1. Newsgroups: comp.lang.c++
  2. Path: sparky!uunet!microsoft!hexnut!jimad
  3. From: jimad@microsoft.com (Jim Adcock)
  4. Subject: Re: Garbage Collection for C++
  5. Message-ID: <1992Aug18.012402.18296@microsoft.com>
  6. Date: 18 Aug 92 01:24:02 GMT
  7. Organization: Microsoft Corporation
  8. References: <1992Aug14.021547.15215@news.mentorg.com> <TMB.92Aug14130323@arolla.idiap.ch> <1992Aug15.015237.17711@tfs.com>
  9. Lines: 40
  10.  
  11. In article <1992Aug15.015237.17711@tfs.com> eric@tfs.com (Eric Smith) writes:
  12. |Explicit memory management functions have traditionally favored memory
  13. |economy over speed.  That was because memory was very expensive.  But
  14. |now that memory prices have fallen through the floor, e.g. from $4000
  15. |per megabyte in 1983 to $25 per megabyte in 1992, it no longer makes
  16. |much sense to waste cpu time to save memory.
  17.  
  18. I disagree.  Today's computer user now uses that extra memory to support
  19. GUI and multiple programs running simultaneously, such that proper maintainence
  20. of the working set remains as large a problems as ever.  If anything, future
  21. needs to query over the entire space of a project, a division, a company, or
  22. the world, makes maintainence of the working set a bigger problem than ever.
  23. |The main advantage of GC is that it simplifies programs and makes them
  24. |easier to maintain.  This is a very substantial advantage, worth
  25. |sacrificing a lot for.  But, if non-GC memory management can obtain
  26. |nearly the same advantage, without the disadvantages of GC, then the
  27. |sacrifices aren't necessary.  
  28.  
  29. Conversely, if GC'ed memory management can obtain the advantages of non-GC
  30. memory management, without the disadvantages, then sacrifices aren't necessary.
  31.  
  32. |So, the question would be, how can non-GC
  33. |memory management gain the advantage of simplifying programs and making
  34. |them easier to maintain, to approximately the same extent that GC gains
  35. |that advantage?
  36.  
  37. On the contrary, the question is why not simply implement modern GC
  38. schemes such as generational scavenging which do not require a sacrifice?
  39.  
  40. |One answer would be that modern programming languages, using OOP and
  41. |genericity, make complexity so much easier to manage that the complexity
  42. |of non-GC memory management is no longer anywhere near as big a problem
  43. |as it was with older languages.  OOP and genericity have almost unlimited
  44. |potential to simplify complex software, to the point where the additional
  45. |simplification provided by GC might become superfluous.
  46.  
  47. On the contrary, OOP and genericity have almost unlimited potential to 
  48. simplify complex software, to the point where C++ programmers now spend
  49. almost all their time tracking down pointer bugs.
  50.  
  51.