majurski@Nbs-Vms@sri-unix (11/25/82)
Subject: Response to FORTH query. I agree with Ravi's likes and dislikes about forth. However, I believe that one more HATE must be added to the list... the file structure. Referencing sequential screens on a disk has been a real pain! A file system is badly needed. A simple file system such as RT-11's may be a good start. Any disk space manager which provides for file naming, allocation, deletion and extension would be a good start. Forth has a real advantage over "compiled?" languages ( C, Pascal etc. ) when running off a floppy disk in that compile times are short. Routines ( words ) can be compliled individually and tested. I started using Forth as a replacement for Applesoft basic on my Apple. Forth offered a structure where one could "reuse" code easily. It also offered a better variety of control structures. Its interactive nature was a plus. Transporting word definitions between different implementations can be a problem. I tried to implement the full screen editor published in Dr. Dobbs Journal and found it difficult. Its design assumed that disk blocks were 1024 bytes. My system ( Apple II+ ) uses 256 byte blocks. The author assumed that one screen ( 1024 bytes ) could be read off the disk into contiguous memory. The Apple implementation used 4 noncontiguous buffers for each screen. A major rewrite was required ( and never completed ). I will probably look at again when my new machine arives ( see below ). I would be interested in ideas on dynamic memory allocation. I have sold my Apple and will be getting an IBM PC. Any suggestions on available Forth implementatins for the PC would be appreciated. I will digest if there is sufficient interest. Does anyone know how Forth implementations are utilizing the 20 bit addressing on the 8086/8088 so that more than 64k of memory can be used? -bill
jhv (11/30/82)
I am a hardware/software hacker. I brought up figFORTH on my S-100 Z-80 based system a couple of years ago, and last month I bought valFORTH (a figFORTH derivative) for my ATARI 400. I have found the FORTH system (combination interpreter, compiler, editor, disk manager, etc.) useful for my style of hacking. I like the built-in number base conversion; I like the simple access to I/O ports and absolute memory locations; I like writing I/O drivers with a combination of high level and low level definitions when I am debugging hardware, software and driver logic simultaneously; and I am impressed with the assemblers and interpreters which can be defined in FORTH in a few screens each. I find the figFORTH editor awkward, but other FORTH editors are available which are easier to use. In summary, I find FORTH a useful tool for some of my hacking, but I also find assembly language, BASIC, PILOT, C, etc. appropriate for other applications. James Van Ornum BTL Freehold houxw!jhv