Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site godot.UUCP Path: utzoo!linus!decvax!cca!godot!bruce From: bruce@godot.UUCP (Bruce Nemnich) Newsgroups: net.lang Subject: Re: FORTH efficiency Message-ID: <146@godot.UUCP> Date: Sat, 30-Jun-84 00:09:05 EDT Article-I.D.: godot.146 Posted: Sat Jun 30 00:09:05 1984 Date-Received: Sun, 1-Jul-84 00:29:55 EDT References: <289@harvard.ARPA>, <2224@mit-eddie.UUCP> <9623@lanl-a.UUCP> Organization: Thinking Machines, Waltham, MA Lines: 26 Forth is efficient in terms of space more than time. I don't remember the whole Forth history, but it goes back to the early 70s, when it was used with early microcomputer chips to control industrial machines. In that day, 4k was a lot of memory. Forth in incredibly compact, often much more so than hand-optimized machine code. I did an 8080 implementation once and remember writing an 8080 assembler for it which took up about 600 bytes. In terms of time-efficiency, it was much better than other interpreted languages available and usually compared reasonably with the basic and fortran compilers available for the larger 8-bit systems. Yes, a good compiler can usually create somewhat faster code (but not more compact!). Remember, the compilers for small machines were often produced pretty primitive code, since the compiler itself had to be small. But most of all, forth is fun and convenient: having the "compiler" and dislay editor and all the system commands resident is great! I also like it as a language a lot more than those two. I have only used forth on small machines; its space advantages are pretty meaningless in a large-address-space machine like the vax. But I'll install it, because its a language I like to play with. It is also has a lot of educational value. Oops, shouldn't have said that! -- --Bruce Nemnich, Thinking Machines Corporation, Waltham, MA {decvax!cca,ihnp4!mit-eddie,allegra!ias}!godot!bruce, BJN@MIT-MC.ARPA