From: mikc@hal.gnu.ai.mit.edu (Mike Coughlin)
Subject: Re: Floating Point
Organization: MIT Laboratory for Computer Science
Date: Sat, 3 Oct 1992 16:07:13 GMT

In article <BvGrLF.69p@starnine.com> mikeh@starnine.com (Mike Haas) writes:
>
>Actually, I see the consideration of "whose code will break" used
>far too much in the discussion of where Forth should go.  Assuming
>you actually want to IMPROVE the language, it has always seemed to
>me that more emphasis be placed on "does this change enhance
>Forth in a general way?", more of a "looking forward" attitude.
>  . . . . . 
>Besides, this argument boils down to "if it wasn't in Chuck's forth,
>it doesn't need to be there."  I actually know little about the
>first "Forth", but my understanding is that it was RADICALLY different
>from what eventaully emerged as common Forth.  If there are any
>that are familiar with the first implemntations, their evolution
>would be interesting reading in this newsgroup, I'm sure.
  
    From what little I know about the development of Forth I see things
very differently from the way many other people see things.
    Forth went thru a long evolution when Chuck Moore developed it.
I don't think we appreciate how much Chuck gained by leaving out many 
common practices from other computer languages. Forth is both a language
and a style of programming a computer. We would all like to be able to
do what Chuck did, and we want to add everything we know and like from
other computer languages. But this would destroy Forth. On person's
favorite feature would break another person's favorite code. Forth 
was created by starting with all computer languages and removing things.
The peices left had to fit together and let you do the most amount of
work with the least amount of anguish. We don't pay enough attention
to Chuck's style of doing things. Before I knew about Forth I had no
idea that anything useful could be done with computers without files
and floating point. There are things that Chuck should have done
differently. Each of us has a different idea of what that is. I think
all Forth code should have large amounts of comments. Also a 100 key
keyboard is better than a 3 key keyboard, altho some people who only
use a mouse might differ. Maybe if I actually saw Chuck using 3 keys
I might change my mind.
    Those who want to reverse the process that created Forth and add 
in more of the things that Chuck left out had better pay attention to 
the whole process and not just to the part of adding new "modern" things. 
Are these new things really going to make Forth better for everybody who 
uses it, or just those who use it in one particular way? Will one new 
feature let you get rid of two old features? I keep seeing statements 
with completely different opinions about the new features that "need" 
to be added to the old Forth.
    Years ago we started to write down what Forth was so that there
could be an ANSI standard. But now all I see is an endless discussion
of what the new version of Forth should be. A documentation project 
has turned into a research and development project.
    I look forward to seeing new computer languages that will make my
life easier. But I am sorry to see that the name of the language
I thought was very nice years ago is being applied to a bunch of these
new languages. And the effort to document Forth has been forgotten in 
the process.