wls@astrovax.UUCP (William L. Sebok) (06/21/84)
I hate to sound "me too" but that is the way it is this time. I just came back from a round of conferences, one of which was the Forth Conference in Rochester, NY. My talk was about the Forth compiler for 4.1-4.2 BSD Unix on the VAX that I wrote in 1982, and use for image processing here. At the conference I decided that it will be posted to net.sources some time this summer. Over the last year I have sent out many "pre-release" tapes. This compiler has been more or less stable for the last couple of years (a fair amount of time to work the bugs out), but the documentation was not finished. Well, that is just about remedied. Posting will be "soon" (but still unspecified). I have had many ideas for "improvements" but, of course, one could work on such improvements forever. They will be left till a possible later addition. I will close with a bit of the abstract of the talk I gave at that conference: -------------- A public domain implementation of Forth has been written for the VAX super-mini that runs under 4.1 and 4.2 BSD UNIX. It has been running now for about two years at the Astrophysics Dept. at Princeton University and is used for image processing. It follows the 79-standards except: 1) entries on the parameter stack are 32 bits wide, 2) addresses are 32 bits (rather than the demanded 16 bits) wide, 3) Certain escape sequences beginning with a backslash are recognized in the printing word ." ......" Some extensions to the 79-standard are: 1) A character string stack, with a full set of string operators. This also make manipulation of Unix file names infinitely easier, 2) A floating point stack, and 3) A set of Unix interface words. Colon definitions are compiled as a series of bsbb, bsbw, or jsb instructions (the shortest one that will reach) rather than as list of pointers. The ICODE operator can be used instead of the ICODE operator for short definitions. When a word defined by the ICODE operator is compiled its code is stuffed in-line rather than referenced. Number references are compiled as the shortest of the many possible instructions to push that number onto the stack. -- Bill Sebok Princeton University, Astrophysics {allegra,akgua,burl,cbosgd,decvax,ihnp4,kpno,princeton,vax135}!astrovax!wls