home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #18 / NN_1992_18.iso / spool / comp / lang / forth / 2985 < prev    next >
Encoding:
Internet Message Format  |  1992-08-20  |  7.6 KB

  1. Path: sparky!uunet!olivea!mintaka.lcs.mit.edu!hal.gnu.ai.mit.edu!mikc
  2. From: mikc@hal.gnu.ai.mit.edu (Mike Coughlin)
  3. Newsgroups: comp.lang.forth
  4. Subject: Re: Still Trying to Decide about the Standard
  5. Message-ID: <1992Aug20.132157.6805@mintaka.lcs.mit.edu>
  6. Date: 20 Aug 92 13:21:57 GMT
  7. References: <3956.UUL1.3#5129@willett.pgh.pa.us> <1992Aug19.125915.14313@mintaka.lcs.mit.edu> <vz!n=ym.xtifr@netcom.com>
  8. Sender: news@mintaka.lcs.mit.edu
  9. Organization: /etc/organization
  10. Lines: 138
  11.  
  12. In article <vz!n=ym.xtifr@netcom.com> xtifr@netcom.com (Chris Waters) writes:
  13. >In <1992Aug19.125915.14313@mintaka.lcs.mit.edu> mikc@hal.gnu.ai.mit.edu (Mike Coughlin) writes:
  14. >
  15. >>In article <3956.UUL1.3#5129@willett.pgh.pa.us> ForthNet@willett.pgh.pa.us (ForthNet articles from GEnie) writes:
  16. >>>Category 2,  Topic 2
  17. >>>Message 116       Thu Aug 06, 1992
  18. >>>E.RATHER [Elizabeth]         at 00:25 EDT
  19. >>> 
  20. >>>Re the recently quoted: 
  21. >>> My own view is that a standard should solidify,
  22. >>>clarify, extract,
  23. >>> and document existing practice. The problem is in identifying "existing
  24. >>>practice."  Does it mean:
  25. >>>   (a) Stuff previously standardized (remember, it's been 10 years since FORTH-
  26. >>>83)?
  27. >>    It may have been a decade years since the 1983 standard was published, 
  28. >>but we didn't get a good write-up out of that process. I've seen several 
  29. >>people say that the '83 standard has major mistakes in it and that it
  30. >>can't be implemented. So the most important thing in my mind is to document
  31. >>what Forth was like 10 or 15 years ago in a clear consistant way.
  32. >
  33. >Huh?  10 or 15 years ago???  I have to heartily disagree!!  Who cares
  34. >what stone age systems that ran on the 8080 were like?  Let's take a
  35. >look at what Forth is like today!
  36. >
  37.    Forth got its real start on the PDP-11. I remember the days when the 
  38. 8080 was popular, and Forth wasn't used nearly as much as it is now.
  39. But don't confuse the systems with the language. Forth has a certain
  40. way of doing things that is the same now as it was fifteen years ago.
  41. If we take a look at what Forth is today, we see a hodge-podge of
  42. uncoordinated features in search of documentation. It reminds me of the
  43. programming systems used on the mini computers twenty years ago. When
  44. I first saw Forth I was amazed at how much improvement could be made
  45. in programming by throwing features away instead of adding them.
  46.  
  47. >>The committee followed the example
  48. >>of many other standards committees in writing hard to read documentation
  49. >>that is supposed to be aimed at experts in the field. It should be for
  50. >>those with technical backgrounds who never heard of Forth and want to know 
  51. >>what is standard Forth practice.
  52. >
  53. >Again, huh?  The purpose of the standard is to describe the language. 
  54. >Not to describe practice, and not to stand as a tutorial!
  55. >
  56.    Forth cannot be described without describing its practice. Forth is 
  57. not just a collection of words. It is a way of doing things that is
  58. very much different from the way other computer langauges do things.
  59. I don't say that the standard should be a beginners tutorial, but if
  60. it is to describe Forth, it must have tutorial material in it. And
  61. if this material is unclear, the document will be useless.
  62.  
  63. >>>   (c) Stuff that most implementors have done some way, but their approaches
  64. >>>differ (in which case, how to find a synthesis or pick one?)?
  65. >>   This is the most difficult area a committee has to deal with. If there
  66. >>was a clear solution, then the implementors would be doing it the same
  67. >>way.
  68. >
  69. >Piffle!  Even with problems that have only one simple, clear solution,
  70. >different vendors may still have used different NAMES for the same
  71. >functions!  And picking one set of names may break a lot of existing code
  72. >that uses a different set of names.  I think that the statement above is
  73. >a gross oversimplification of the problem.
  74. >
  75.    Well I can certainly agree about my statement being a gross 
  76. oversimplification of the problem. In fact, I even think all the messages
  77. I've seen over the past few years about the standard have been 
  78. oversimplifications.
  79.    If the buyers of Forth systems would state that they will not fork
  80. over their cash for systems that have different names, then the vendors
  81. would start using the same names. If people who publish code would 
  82. always use standard words, system buyers would know what word names
  83. to look for. But it hasn't happened yet. Having a new feature is
  84. always more interesting than using the same old words. I don't expect
  85. a new standard document to change that.
  86.  
  87. >>Have they consulted with vendors and publishers of PD Forth
  88. >>systems who cannot attend meetings of the committee or who have not sent
  89. >>in proposals? 
  90. >
  91. >Gawd, I sure hope not, considering how thoroughly lame most of the PD
  92. >systems I've seen have been!  :-)
  93. >
  94. >>>   (d) Stuff that <n> implementors do (in which case, what is <n>? And, as in
  95. >>>(c), how to resolve different approaches to the same problem?)?
  96. >>    Don't forget that the negative of this statement also deserves
  97. >>consideration. Many implementors might deliberately leave out stuff
  98. >>because they don't want it.
  99. >
  100. >And they can continue to do so.  Only the CORE wordset is required by
  101. >the standard to be present in any given implementation.
  102.      So we have a standard, but we don't have to follow it. We can
  103. use the core words to change everything else. I don't like the new
  104. core words any better than the old core words, so I wonder which
  105. I should use.
  106. >
  107. >> Forth was created by selecting a particular
  108. >>combination of programming methods that worked together. Adding to this
  109. >>does not make a better system. Anything that is missing from a particular
  110. >>version of Forth can be added by the user.  It doesn't have to be done
  111. >>in a standard way. What we do have to standardize is the ability to 
  112. >>add what is needed, not create a list of all commonly used programming
  113. >>ideas.
  114. >
  115. >Yeah, and for that matter, why bother to standardise words like `+'? 
  116. >After all, the user can define it for himself!  It doesn't have to be
  117. >done in a standard way.  And we all know that reinventing the wheel over
  118. >and over and over again is *much* more important than getting any real
  119. >work done.  The requirement to reinvent wheels, rather than
  120. >concentrating on the task at hand is why Forth enjoys such incredible
  121. >popularity in the mainstream computing world today!
  122. >
  123.     We don't have to worry about '+' being standardized. The cpu 
  124. designers have done that for us. Its difficult words like '/' that
  125. we have to worry about.
  126.     The requirement to write new Forth standards keeps us from 
  127. concentrating on the task at hand. The publication of new algorithims
  128. in the C language is what keeps C in the mainstream of popularity
  129. in the computing world today. What could we do to have new algorithims 
  130. published in Forth instead? After the 83 standard was published,
  131. Laxen & Perry put their Forth system in the public domain. So we had
  132. not only a standard collection of Forth words, but a system that ran
  133. the same way on different platforms. A few applications were published
  134. using F83 and an attempt was made to publish portable code. But that
  135. has died down because there is to be an ANSI standard. We have had
  136. the chance to publish portable code in the past, but people don't
  137. do it. There is always some excuse to tinker with the system, change
  138. the words, make some improvements, include machine code for one
  139. particular platform, and so on. Without the desire to produce
  140. portable code, it woun't happen. It doesn't matter if Forth is too
  141. old fashioned or if it has just had the latest wizzy thing added to
  142. it. 
  143.  
  144. >Sheesh!
  145. >
  146. >I don't even know why I bother.
  147.    I know why I bother. I don't want to have to work with C programs.
  148. The main thing I hate about these mesages is they take too long to
  149. read. And vastly too long to write.
  150.