Linked by Eugenia Loli on Tue 12th Nov 2002 20:39 UTC, submitted by bland est
General Development Forth has been a recognized programming language since the 1970's. ColorForth is a redesign of this classic language for the 21st century. It also draws upon a 20-year evolution of minimal instruction-set microprocessors. Now implemented on modern PCs, it runs stand-alone without an operating system. Applications are recompiled from source with a simple optimizing compiler.
Permalink for comment
To read all comments associated with this story, please click here.
Another perspective
by Will Honea on Wed 13th Nov 2002 02:18 UTC

Forth is a tool, just as any programing language or OS is. While most of my production coding is done with C, C++, JAVA or task specific tools, I maintain a library of Forth kernels for just about every microprocessor ever shipped - back to to 8008 and TI9900. Why? Simply because it is the best tool for some jobs. I design a lot of instrumentation where the basic Forth kernel occupies maybe 4k of ROM. In that 4k I have all the processor-specific code necessary to interface with a rudimentary BIOS for console io, a compiler to allow me to develop test routines to quantify the instrument as development procedes as well as defining performance parameters to pass on to developers for further programming. Some instrumentation goes out the door with this same Forth kernel, others with a replacement based on information gained from the test bed.

Again, why? Because I can not find a better tool for initial testing and development of custom hardware. Even the minimalist assembler user requires a separate machine to develop code which is then transfered to a new device. With Forth, I can tweek the device in the field with no outside support. Given a reasonable amount of flash memory I can include an assembler, a text editor, performance recording code, and most of the common utilities I need repeatedly. Any or all of this code can be re-written on the fly and new procedures inserted as needed, including bare metal level hardware interfaces.

Do I like Forth? Not especially as I find RPN a roysl psin to work with. I would certainly not want to develop major user interface systems in Forth, although some years back a company I worked with did ship a precursor to today's laptops with a full manufacturing quality control app in Forth. I still ship it when the system is likely to need extensive field customization. Like any other tool, I find it to simply be the best solution for some situations. As for functionality, I've seen muli-user, multi-process systems built with it that rival any current OS - all on a lowly 8085 clone with 64k of RAM. That alone should demonstrate its potential.