Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!wuarchive!mit-eddie!uw-beaver!zephyr.ens.tek.com!tekcrl!tekgvs!toma From: toma@tekgvs.LABS.TEK.COM (Tom Almy) Newsgroups: comp.lang.forth Subject: Re: porting an MS-DOS Forth to a 386 Unix/Xenix Keywords: MS-DOS, Forth, porting, source, help Message-ID: <6458@tekgvs.LABS.TEK.COM> Date: 4 Dec 89 17:28:14 GMT References: <1989Nov20.211822.1015@tree.uucp> <5317@sdcc6.ucsd.edu> <6420@tekgvs.LABS.TEK.COM> <1989Nov29.204348.4416@tree.uucp> Reply-To: toma@tekgvs.LABS.TEK.COM (Tom Almy) Organization: Tektronix, Inc., Beaverton, OR. Lines: 77 In article <1989Nov29.204348.4416@tree.uucp> stever@tree.uucp (Steve Rudek) writes: >In article <6420@tekgvs.LABS.TEK.COM>, toma@tekgvs.LABS.TEK.COM (Tom Almy) writes: >> Why is it that people are willing to pay good money for other languages, >> but expect to get good Forths for free? Why did I decide to make a few bucks >> (and *very* few) with Forth when I could have made it rich with a >> "politically correct" language used by people with $money$? > >A good question. I've been stewing on an answer for about 10 years. [a list of inexpensive compilers he bought] >Some comments and observations: [If I may summarize: You can get a EXCELLENT C compiler (Borland) for under $100. Why spend more money for a compiler that isn't friendly, COMPLETE, bug free, powerful, and WELL DOCUMENTED?] I can speak for the LMI products (with some bias). But what I have to say probably applies to Harvard Softworks, and MMS Forths. When you bought LMI Z80 Forth it was little more than a warmed over FIG Forth. As such, it was a good deal at $50 because you got the documentation and the program was typed in for you! Current products, while much more expensive do deliver more: File accessing functions equivalent to C's stdio, floating point (hardware and software), string functions, graphics (CGA, Herc, EGA, and VGA), Forth screen editor (but will work with ascii files), and a full assembler. The documentation is FAR better than what used to be given, I'd guess about 400 pages, indexed. But there still is no tutorial. The new Forths are also far more sophisticated (from a CS point of view). >(5) Those who survive the horrendous Forth learning curve and, ultimately, >become such experts on Forth internals that they could write their own >Forth discover something else: compared to other languages, Forth >implementations are EASY to write! Think about it. Writing a high >performance, commercially-competitive C or Ada compiler is a extremely >intricate task which almost mandates years and years of formal computer >science education and many man-years of coding. On the other hand, a Forth >hot shot could write a REALLY high performance Forth within 6 months, >programming all by himself. And he probably wouldn't have to know a >thing about technologies such as compiler-compilers, LALR parsers, >and optimizing compilers. So...why SHOULD a commercial Forth vendor >expect to be paid as much for his system as another vendor might >charge for a C or Ada or Modula-2 compiler? I simply don't agree that a single person could write a modern high performance Forth, from scratch, in 6 months. I think a hot shot could write a Forth kernel from scratch in a month with no problem, but a modern system would need all the features mentioned above, plus a metacompiler for generating target applications, and a native code compiler for performance. I wrote a native code compiler which is bundled with the LMI Forths, and I can tell you that it is not a trivial exercise to come up with code generators that match the performance of modern day C's -- the work is easily several times that of the Forth kernel. Also once you get out of the mass market arena, Forth systems don't cost as much as other languages. For instance, when we got an 80386 system, getting LMI UR/Forth 386 cost $350.00. Upgrades have been free, including the latest VM support. On the other hand, it cost $1500 to get the Metaware High C 386 compiler, and the Phar Lapp 80386 assembler/linker/runtime. I wouldn't be suprised if Borland has sold 100,000 copies of its C compiler. There are probably only a handful of companies that have sold more than 1,000 copies of Forth, and I would expect none have sold 10,000. Figuring Borland had a wholesale price of $50.00 for Turbo C (at the original price), they would probably gross about $20.00 (guessing $30.00 for disks, paperback manuals,). That would give them $2 million. Of course there is the flashy advertising, but that still leaves a good chunk of money for programmers. Now that poor Forth developer not only will sell 1% the volume, if lucky, but also has much higher per unit sales costs. You just can't make money. I bet there are no commercial vendors that don't make at least half their income consulting or holding other jobs as well. To put it another way. If there was money to be make in Forth, there would be a Turbo Forth. Tom Almy toma@tekgvs.labs.tek.com Standard Disclaimers Apply, except I get to eat at McDonalds every time somebody buys an LMI Forth system. But I have to eat alone.