Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!samsung!spool.mu.edu!news.cs.indiana.edu!purdue!bouma From: bouma@cs.purdue.EDU (William J. Bouma) Newsgroups: comp.lang.forth Subject: Re: General Purpose Forth Message-ID: <13985@medusa.cs.purdue.edu> Date: 21 Mar 91 21:57:52 GMT References: <3835.27e4e843@iccgcc.decnet.ab.com> Sender: news@cs.purdue.EDU Organization: Department of Computer Science, Purdue University Lines: 77 In article <3835.27e4e843@iccgcc.decnet.ab.com> schmidtg@iccgcc.decnet.ab.com writes: >This is a standards issue and I won't argue the point that FORTH standards >for things such as floating point have been slow to mature. Funny, most of what I have been talking about is standards issues! > bouma said: >> Suppose in Forth I want to create a new type which is just a data struc- >> ture of integers and characters. In doing so I have to think about >> ... > >This is a matter of control. I'd prefer to have the control in my own hands >rather than leave it to the compiler. Nothing is more frustrating than a > ... >interface, such as a communication packet because it is making assumptions >about alignment which may not always be true. It is mainly a matter of a standard mechanism for creating new types. How does this imply that one will lose control over anything? It is to us to design it in such a way that one has as much control as is needed. But the mundane repetitious details should in most cases be left to the computer. > bouma wrote: >> Data types is such a basic and fundamental abstraction in programming >> that it is silly for Forth not to deal with it in a standard fashion, and >> be done with it. Why should each person that wants to use different types >> have to first figure out a method, and then implement it individually? >... >given problem. I find this to be one of the most creative and productive >ways to solve a problem. I like the flexibility of creating my own tools, >rather than having them rigidly provided by traditional compilers. I >refer to the "staircase" example that Brodie mentions in "Thinking Forth". >If I were building a house, I would like to have the ability to build >my own staircase, rather than be limited to one supplied by a contractor. >By building my own, I can get exactly what I want and be satisfied that That is silly. That presumes you have both the knowledge and the physical ability to build the stairs. If all I want to do is climb to the second floor, why should I be forced to build my own stair? Since there exist well known and standard ways for building stairs I expect that an exper- ienced builder could do a better job with it than I, unless I were to put a lot of effort into it. The analogy breaks down, though, in that everyone knows how to climb stairs, but if someone were to come over to your "Forth house" he would have to learn from scratch all of your self- built constructs. Is your goal is to simply build yourself a nice per- sonalized house? My goal is to build a skyscraper, a city, or even to go off planet. 8^) I may think I am good, but I will need some help on that last one. >If you dislike FORTH so much, why do you spend so much time in this >newsgroup? Do you have some constructive comments on the direction >you would like to see FORTH take, or do you feel that the language >is a "joke" and should be abandoned altogether? I think I have been clear on what I think Forth in it's present form is good for. As to the first question, it answers itself. The fact that I spend time time in this group at all shows that I like Forth. I have learned things from reading this group, and I think I have something to contribute to it. I have as much right to post my opinion on why Forth has not found CS acceptance as anyone else. (If you think back, that is how this all started.) I thought I had been giving constructive criticism! One of the directions (I have several, but don't want to upset anybody.) I would like to see Forth go is to acknowledge that there are other types besides integers and characters. I think this can be done in such a way that Forth does not lose its identity, its flexibility, or its controlability. What it might gain is a higher level of programming and an increased sharing of code. Several of you seem ready to dismiss the whole concept as bad without ever thinking objectively about it. If you just want to build houses, why deny the rest of us the tools to build cities? Forth may be be good enough for you now, but I would not mind seeing it made better. Thus I hate Forth. -- Bill