Path: utzoo!utgpu!water!watmath!clyde!att!pacbell!lll-tis!lll-winken!ubvax!smegma!mdg From: mdg@smegma.UUCP (Marc de Groot) Newsgroups: comp.lang.forth Subject: Re: Forth "Pre-Compiler" Message-ID: <413@smegma.UUCP> Date: 24 Jul 88 06:03:55 GMT References: <8807221513.AA05347@jade.berkeley.edu> Reply-To: mdg@smegma.UUCP (Marc de Groot) Organization: A moving point in 4-space Lines: 33 In article <8807221513.AA05347@jade.berkeley.edu> Forth Interest Group International List writes: >Someone whose name I have lost wrote: >>Why I LOVE Forth: >> It is FAST! -- Above all else, Forth is one of the fastest >> executing languages around. >The claim that FORTH is one of the fastest executing languages around >makes me think the author has used only interpreters previously. By >its very nature FORTH programs *must* be slower than programs generated >by a good optimizing compiler. It is not strictly true that FORTH must, by its very nature, execute more slowly than code generated by a good optimizing compiler. It *is* true that the popular microprocessors now in use execute threaded code more slowly than, say, a good C compiler's output. It is trivial to design indirect auto-incrementing jump instructions into processors. It is indeed a shame that none of the leading microprocessor manufacturers have chosen to do so! The Novix NC4000 (a hardware Forth implementation) illustrates this point. It executes the indirect, auto-incrementing jump mentioned above in *one* clock tick (at 7 MHz). Indeed, the NC4000 executes the BYTE "sieve" benchmark several times faster than an 8086 clocked at the same speed. I don't have hard numbers in front of me that I can quote, but I worked with the NC4000 a couple of years ago and this was the case. The point is that when the design of the silicon is taken into consideration, Forth wins *hands down* over other languages in terms of execution speed. The industry has an awful lot to learn from Forth. -- Marc de Groot (KG6KF) UUCP: uunet!{uport,ubvax}!smegma!mdg Internet:mdg@smegma.UUCP "Quoiqu'elle soit tres solidement montee, il faut ne pas *brutaliser* la machine." -Oliver Wendell Holmes