Machine Forth

A significantly reduced set of and in some cases redefined semantics for Forth primitives. The intention is to take advantage of the existing microprocessor as much as possible as a stack CPU. Many CPUs are amazingly adept at doing this, with only relatively minor amounts of compiler intelligence. Resulting binaries offer adequate (but certainly not stellar) performance, and is often possible with a compiler measuring only a few hundreds of bytes.

Typical characteristics of a MachineForth include:

Despite the fact that MachineForth actually is at a lower-level than ANSI Forth when starting out, it still is a meta-language, and hence, can evolve towards higher levels of abstraction very quickly. Due to the reduction in control flow and tail recursion elimination, it can often do so more compactly as well.

See for a sample mapping of ColorForth primitives, derived from an earlier set of MachineForth primitives, and how they map to Intel Pentium machine language instructions. The chart isn't as clear as I'd like, but it saves me from having to cut-n-paste-n-clean-up here.

Contrast with AnsForth.

See also SeaForthArchitecture

View edit of November 22, 2008 or FindPage with title or text search