Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!uunet!wuarchive!zaphod.mps.ohio-state.edu!uakari.primate.wisc.edu!ames!uhccux!dunn From: dunn@uhccux.uhcc.hawaii.edu (John Dunn) Newsgroups: comp.lang.forth Subject: LMI Forth (was: porting an MS-DOS Forth to a 386 Unix/Xenix) Keywords: MS-DOS, Forth, porting, source, help Message-ID: <5626@uhccux.uhcc.hawaii.edu> Date: 5 Dec 89 14:40:59 GMT Reply-To: dunn@uhccux.UUCP (John Dunn) Organization: University of Hawaii Lines: 69 Actually the LMI Z80 Forth, along with the early PC-Forth, was a considerable bargain. You not only got a very clean FIG Forth, but you also got lots of clear and well commented example programs and a manual that was far and above better than anything out there I ever saw. Especially noteworthy was the explanations of Forth iteration constructs. Although I ended up using a version of Fig-Forth that I wrote myself for my rather large commercial graphics application, the money I spent on Ray Duncan's LMI offerings was *very* well spent for the education it gave and for the utilities such as the very complete and robust assembler that was included. Alas, the current LMI Forth documentation, while complete, does not include an upgraded version of that excellent overview documentation & tutorial. Can't say why. What I can say though is that UR/Forth currently offered by LMI is an amazing product. It uses a proprietary hashing technique for FIND, which makes it compile even monster programs in a blink. The 386 version now uses Phar Lap's VMM for state-of-the-art virtual memory management: never again run out of dictionary space. My original intention was to again use LMI Forth, along with Dr. Ting's updated book and the reams of PD Forth source to roll my own, but the robustness and speed and compatibility between 32-bit 386 and 16 bit 8086 versions, not to mention LMI's long-term (10 years in this industry is about as good as it gets) commitment to maintaining and upgrading the product convinced me to put my time into the application and let LMI to the Forth engine. The question of why pay more than $50 for a commercial Forth is along the lines of why pay for good tools. Answer: if you are a professional, the money you invest in your tools is trivial compared to the value of your time spent using them. This is so obvious it got me to wondering why it was even asked. I think it might have something to do with the issue of why do people use Forth at all when the professional programming community is now so well supported by C. I personally have come full circle with Forth: a decade ago I wrote a Forth application that grew into a company. When it came time to write Version 2 of the application, it was done to my specifications by the company's programming staff. And it was written in C, not Forth. Now I have left the company to once again write original applications solo and - after a year of mushing about in various Lisp's - I am back to writing in Forth. Thinking is greatly affected by the language we think in, and to no small extent is limited by that language's limitations. Procedural languages such as C and Pascal and (horrors) Ada are just the ticket when you are following a blueprint, or when you are hiring other people to follow your own design. But if you are doing original, creative work you need the malleability of a self modifing language such as Forth (or Lisp or Smalltalk). Forth ends up being the best of these because you can easily strip away the language support and have the application running on its own, lean and mean. So my answer to "Why Forth?" is, if the project is well defined so that there is little creative design work involved, Forth is *not* the best language. You need something that narrows your focus, that works to keep you from coloring out of the lines. Barring other considerations (such as military job specs), C is probably the language of choice for such a project. But if you are doing creative programming, where the end result is being defined in an iterative process as you write and rewrite, Forth seems to be the best (although far from perfect) choice. Perhaps this is why Forth seems to appeal to the fringe crowd: creative people have always been considered fringe. It goes with the territory.