home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #3 / NN_1993_3.iso / spool / comp / os / mswindo / advocacy / 3963 next >
Encoding:
Text File  |  1993-01-21  |  4.7 KB  |  88 lines

  1. Newsgroups: comp.os.ms-windows.advocacy
  2. Path: sparky!uunet!spool.mu.edu!uwm.edu!linac!att!cbnewsc!cbfsb!att-out!pacbell.com!rtech!amdahl!amdcad!netcomsv!netcom.com!erc
  3. From: erc@netcom.com (Eric Smith)
  4. Subject: Gigabytes (was Re: The sin of MicroSoft)
  5. Message-ID: <1993Jan21.095320.14831@netcom.com>
  6. Organization: Netcom - Online Communication Services (408 241-9760 guest)
  7. References: <1993Jan20.192533.20241@ns1.cc.lehigh.edu>
  8. Date: Thu, 21 Jan 1993 09:53:20 GMT
  9. Lines: 77
  10.  
  11. In article <1993Jan20.192533.20241@ns1.cc.lehigh.edu> bjs4@ns1.cc.lehigh.edu (BENJAMIN J SCHRAGGER) writes:
  12. >I have a few more.
  13. >4) Film and video post production.  with the MCC TB chip you can store
  14.  
  15. The biggest beneficiary of gigabytes of memory would be software
  16. development.  Software development is a lot more important than most
  17. people realize.  All other computer applications would be ridiculous
  18. pipe dreams without it.
  19.  
  20. Name one person in all of history who could have imagined modern word
  21. processors and spreadsheets.  No way, no one has an imagination that
  22. weird, to imagine such ridiculous pipe dreams.
  23.  
  24. Software development can change the world.  We need to find ways to
  25. make it more effective.  For every programmer, there are thousands of
  26. person-years of software development work that needs to be done.  We
  27. need to find ways to enable programmers to work thousands of times
  28. faster than they do now.
  29.  
  30. Most of the work programmers do now, i.e., most of the time they spend,
  31. is in dealing with limitations of their tools, and/or in doing work
  32. that wouldn't be needed without those limitations.
  33.  
  34. With gigabytes of memory, we could implement software development
  35. expert systems.  They could do most of the programmer's work, such that
  36. the programmer would just act as a consultant to clarify any issues the
  37. expert system might not be able to resolve due to lack of complete
  38. information.
  39.  
  40. Consider, for example, the difference between programming in Scheme and
  41. programming in assembler language.  The reason for programming in
  42. assembler language is that it makes it possible to create the tightest
  43. possible code, especially if you are an assembler language expert.  But
  44. an expert Scheme programmer can often get the same program working 1000
  45. times sooner.  So, a good way to get the advantages of both, is to use
  46. Scheme first, and then after the program is done, give it to an
  47. assembler language expert to create the tightest possible code with the
  48. same functionality.
  49.  
  50. But with gigabytes of memory, that assembler language expert need not
  51. be human.  It can have a large knowledge base about software in general
  52. and about ways of optimizing various kinds of functionality, etc.  Its
  53. knowledge base can help it decide when certain optimizations are safe,
  54. etc., unlike most present optimizers that make half-educated guesses.
  55. It can replace garbage collection with explicit allocation and reuse of
  56. memory such that no time is wasted at all.  That would be terrible if
  57. attempted by human programmers, because it would make their code
  58. unmaintainable.  But when done by software, it would be no problem,
  59. because the maintenance is done to the original source code input to
  60. that software.
  61.  
  62. There is nothing a human programmer can do, in implementing a program
  63. in assembler language to have the same functionality of a Scheme
  64. program, that can't also be done by software, if the software is at the
  65. same level of expertise as the human.  It needn't have human
  66. intelligence, because Scheme to assembler translation is a fairly
  67. narrow field of knowledge.  So it just needs gigabytes of knowledge
  68. rather than human intelligence.  But it needs those gigabytes in fast
  69. memory, because optimizing requires a lot of work, and having the
  70. knowledge base on disk might cause it to take a year to complete.
  71. Using virtual memory would not be a good compromise, because the nature
  72. of the work is such that the accesses would be too random, and the disk
  73. would be bogged down in seeking.  Virtual memory is good when the
  74. accesses tend to be repetitive, which is the case for the more tedious
  75. jobs computers do now.
  76.  
  77. Another point about optimizing Scheme is that a lot of the work is in
  78. finding better algorithms, etc.  The Scheme program that best describes
  79. the functionality is not the same as the Scheme program that best
  80. implements it.  That is, you can write one program whose purpose is to
  81. make it clear what the program is for, without regard to how fast it
  82. executes.  Then you can find ways to make it execute faster.  The first
  83. step, making it clear what the program does, could be done by humans,
  84. and the 2nd step, making it execute as fast as possible, could be done
  85. by the machine, as part of the overall optimization process.  But that
  86. is part of the reason why it needs gigabytes of memory, as that kind of
  87. optimization requires a tremendous amount of knowledge.
  88.