[comp.lang.forth] Portability problems

wmb@MITCH.ENG.SUN.COM (Mitch Bradley) (02/21/91)

> Interesting.  I've had relatively little trouble porting applications from
> processor to processor.  It's moving from "standard" to "standard" that gives
> me headaches.

The differences between standards don't cause me too much trouble; the
problems that bother me the most are coping with things that I have
to deal with but which neither FIG-Forth, Forth-79, nor Forth-83
bothered to address at all. Specifically files, floating point, 32-bit
machines, memory allocation, strings, and error handling.

In the areas where previous standards differ, there is a small finite number
of possibilities, and it is fairly easy to make a few redefinitions to
cope with the 2 or 3 possibilities.  The exception is vocabularies, where
the previous standards differed so widely that the only portable thing
to do is to not use them!

In the areas that previous standards totally ignored, the range of
variation across implementations is much greater, from "no solution at
all" to "a set of words that works on this particular vendor's system
but no other".

That is why I am enthusiastic about ANS Forth, whose extension wordsets
addresss the issues that concern me most.  Even if the ANS Forth
extension wordsets are not 100% perfect, they are very very useful.
In my opinion, with the exception of strings, the extension wordsets
are all good enough that it's probably counterproductive to tweak them
any further.

Mitch Bradley