DNW's Forth Page

Revised: July 12, 2006

Randolph Peters' short and elegant Pocket-Forth packages: Case, OO, Struct.

Strings

Structures. There have been many approaches, and the following list is certainly incomplete. John Hayes and Marcel Hendrix are prominently mentioned in these links. Some practitioners feel that the simplicity of defining what you need for a particular application in Forth outshines any need for a standard specification. But there are some fairly simple and useful implementations.

Lists. So far we only have a link to our own. We'll include more as we become aware of them.

Forth to C translation. We know of only three such translators, including our own.

Complex arithmetic and elementary functions

External modules for pfe. Besides the dynamic string and complex math modules which are part of the pfe distribution, we have written a few external modules. Among them is an experimental interface to C99 floating point extensions.

kForth in MacOS X. We did a port of Krishna Myneni's kForth to the PowerPC under MacOS X. Our main contribution was the ppc assembly language code for the virtual machine, including Forth primitives and mixed precision division subroutines, plus a number of tests.

While we still use pfe as our main Forth system, we're impressed by kForth's relatively lean design among C-based Forth's. Its byte-code threading scheme allows control structures and return stack manipulations that are normally compilation only to work also in interactive mode. And its performance on the standard four benchmarks is quite decent. We get a user time ratio of about 4.00 for kForth-fast 1.4.0 compared to gforth-fast 0.6.2 on our dual-G4 osx system, and 2.86 on a tri-i686 linux system.


David N. Willliams' home page and Forth archive.