[net.micro] FORTH query

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