Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!husc6!think!ames!sdcsvax!ucbvax!dewey.soe.berkeley.edu!oster From: oster@dewey.soe.berkeley.edu (David Phillip Oster) Newsgroups: comp.lang.forth Subject: Re: Forth Message-ID: <21253@ucbvax.BERKELEY.EDU> Date: Mon, 12-Oct-87 20:04:36 EDT Article-I.D.: ucbvax.21253 Posted: Mon Oct 12 20:04:36 1987 Date-Received: Wed, 14-Oct-87 02:43:59 EDT References: <5.21698D15@circle.UUCP> Sender: usenet@ucbvax.BERKELEY.EDU Reply-To: oster@dewey.soe.berkeley.edu.UUCP (David Phillip Oster) Organization: School of Education, UC-Berkeley Lines: 47 In article <5.21698D15@circle.UUCP> rat@circle.UUCP (David Douthitt) writes: >I know, but why not tell what you have used Forth for in the past? For a previous employer, I have written educational games in Forth that were published by: Disney, (Apple ][) CBS software (Atari 800, Commodore 64) and a best selling program that teaches typing, that runs on IBM PC (we had to rewrite it for the XT, jr, and AT were released, because IBM kept changing the hardware definition in important ways.) and Macintosh (I had to implement my own Forth 83 implementation, because the project was early enough that no development systems with reasonable license agreements were available.) I also wrote the cross-compilation system that let us generate the Atari code on the Apple ][ (that model of atari had disk with a capacity of 90k, to keep the source code for the project manageble we had to compile on the Apple.) I wrote the cross-compilation system that let me compile my initial Mac systems on the IBM. I wrote the networking code that tied all these diverse machines together. I wrote the object-oriented extensions that were used in some of our advanced projects. All of this left me with a profound distaste for Forth. In Forth, it is easy to write a program of hacker quality, or of research quality, or of for-internal-use quality. As soon as you try to write a real, commercial product, that real people are going to use, that fits on the machine and runs with reasonable performance, you discover that things work fine for the first 80%, but getting the program actually finished costs you so much in time and effort that you would have done better to write the whole thing in a conventional language. I now use LightSpeed C, with an object oriented programming methodology I developed, and am roughly 4 to 10 times as productive as I used to be in Forth. Can someone out there tell me how I was misusing Forth? What I was doing wrong? Is there some magic repository of good Forth style and functionality that makes "Forth Dimensions" magazine and the source for Novix Forth look like a child's scrawl? (I read both on my way to learning Forth.) --- David Phillip Oster --A Sun 3/60 makes a poor Macintosh II. Arpa: oster@dewey.soe.berkeley.edu --A Macintosh II makes a poor Sun 3/60. Uucp: {uwvax,decvax,ihnp4}!ucbvax!oster%d <1ticleYEINDsome c co