comp.lang.forth FAQ: General Information (1 of 7)

Skip to first unread message

J. D. Verne

Jul 4, 2000, 3:00:00 AM7/4/00
Posted-By: auto-faq 3.3 (Perl 5.004)
Archive-name: computer-lang/forth-faq/part1
Posting-Frequency: Monthly. A how-to-find-the-FAQ article is posted weekly.

comp.lang.forth Frequently Asked Questions (1/6): Gen-
M. Anton Ertl,


Table of Contents:

1. Acknowledgements

2. comp.lang.forth FAQs

3. General Questions

3.1. What is Forth?

3.2. Where does the name Forth come from?

3.3. Why and where is Forth used?

3.4. Hang on, isn't Forth out of date now?

3.5. Is Forth faster or smaller than C?

3.6. What language standards exist for Forth?

3.7. What is an RFI?

3.8. Are there Coding Standards for Forth?

3.9. I have trouble managing the stack. Should I use global

3.10. What is the Forth Interest Group?

3.11. Who is Chuck Moore and what is he doing?

4. Flame baits

4.1. Commercial vs. free Forth systems

4.2. Free Forth systems are bad for Forth.

4.3. Blocks vs. files

4.4. LOCALS|

5. Miscellaneous

5.1. Where can I find a C-to-Forth compiler?

5.2. Where can I find a Forth-to-C compiler?

5.3. RECORDS in Forth?

5.4. Why does THEN finish an IF structure?

5.5. What is threaded code? What are the differences between the
different threading techniques?

5.6. Has anyone written a Forth which compiles to Java bytecode?

5.7. What about translating Java bytecode to Forth?

5.8. How about running Forth without OS?

5.9. How about writing an OS in Forth?

1. Acknowledgements

This FAQ is based on previous work by Gregory Haverkamp, J. D. Verne,
and Bradford J. Rodriguez.

2. comp.lang.forth FAQs

The comp.lang.forth FAQ is published in seven parts, corresponding to
these seven sections. This part is the General/Misc FAQ, where the
questions not covered in the other FAQs are answered. The parts are:

o General questions <

o Online resources <

o Forth vendors <

o Forth systems <

o Books, periodicals, tutorials <

o Forth groups & organizations <

o ANS Forth <>

You can get the text versions of these FAQs at

These FAQs are intended to be a brief overview of the tools and
information available for the new FORTHer. For a historical
reference, programming paradigms, and deep technical information try
some of the listed references. For general questions on the Usenet,
or the methods used to get this information, try these other Usenet

o news.announce.newusers

o news.newusers.questions

o news.announce.important

3. General Questions

3.1. What is Forth?

Forth is a stack-based, extensible language without type-checking. It
is probably best known for its "reverse Polish" (postfix) arithmetic
notation, familiar to users of Hewlett-Packard calculators: to add two
numbers in Forth, you would type 3 5 + instead of 3+5. The
fundamental program unit in Forth is the "word": a named data item,
subroutine, or operator. Programming in Forth consists of defining new
words in terms of existing ones. The Forth statement


defines a new word SQUARED whose function is to square a number (mul-
tiply it by itself). Since the entire language structure is embodied
in words, the application programmer can "extend" Forth to add new
operators, program constructs, or data types at will. The Forth
"core" includes operators for integers, addresses, characters, and
Boolean values; string and floating-point operators may be optionally

3.2. Where does the name Forth come from?

The name FORTH was intended to suggest software for the
fourth (next) generation computers, which Moore saw as being
characterized by distributed small computers. The operating
system he used at the time restricted file names to five
characters, so the "U" was discarded. FORTH was spelled in
upper case until the late 70's because of the prevalence of
of upper-case-only I/O devices. The name "Forth" was gener-
ally adopted when lower case became widely available,
because the word was not an acronym.

Rather, Colbourn, and Moore: The Evolution of Forth
<>, in: History of
Programming Languages (HOPL-II), ACM Press/Addison-Wesley 1996.

Note: Forth is not a 4GL (language for programming database

3.3. Why and where is Forth used?

Although invented in 1970, Forth became widely known with the advent
of personal computers, where its high performance and economy of
memory were attractive. These advantages still make Forth popular in
embedded microcontroller systems, in locations ranging from the Space
Shuttle to the bar-code reader used by your Federal Express driver.
Forth's interactive nature streamlines the test and development of new
hardware. Incremental development, a fast program-debug cycle, full
interactive access to any level of the program, and the ability to
work at a high "level of abstraction," all contribute to Forth's
reputation for very high programmer productivity. These, plus the
flexibility and malleability of the language, are the reasons most
cited for choosing Forth for embedded systems.

3.4. Hang on, isn't Forth out of date now?

One of the best answers came from Brad Rodriguez
<>. You can find the full version at
<>. In short,
Forth's advantages are that it's comprehensible, small, interactive,
fast, extensible, and makes it easy to work at a high level of

BTW, this question came from someone comparing a 10+ year old Forth
system with the latest version of Borland C++. His system was really
out of date, but also with respect to current Forth systems.

3.5. Is Forth faster or smaller than C?

Not in itself. I.e., if you translate a C program literally into
Forth, you will see a slow-down (e.g., a factor 4-8 with Gforth, a
threaded-code system; for typical native-code systems you will see a
factor of 1-3). Similarly, there is no inherent size advantage in
Forth. For details see

However, there are many reports of cases where Forth programs beat
others in size and/or speed. My guess is that the added flexibility of
Forth helps programmers produce faster and/or smaller programs.

3.6. What language standards exist for Forth?

An American National Standard for Forth, ANSI X3.215-1994, is accepted
worldwide as the definitive Forth standard ("ANS Forth"). This
standard also has been blessed as international standard (ISO/IEC

IEEE Standard 1275-1994, the "Open Firmware" standard, is a Forth
derivative which has been adopted by Sun Microsystems, HP, Apple, IBM,
and others as the official language for writing bootstrap and driver
firmware. See <>.

Prior Forth standards include the Forth-83 Standard and the Forth-79
Standard issued by the Forth Standards Team. The earlier FIG-Forth,
while never formally offered as such, was a de facto "standard" for
some years.

"FORTH STANDARDS Published standards since 1978 are Forth 79 and
Forth 83 from the Forth Standard Team, and ANS Forth - document
X3.215-1994 - by the X3J14 Technical Committee. The most recent
standard, ANS Forth, defines a set of core words and some optional
extensions and takes care to allow great freedom in how these words
are implemented. The range of hardware which can support an ANS Forth
Standard System is far wider than any previous Forth standard and
probably wider than any programming language standard ever. See web
page <> for latest
details. Copies of the standard cost $193, but the final draft of ANS
Forth is free and available (subject to copyright restrictions) via
ftp..." --Chris Jakeman,

The (un)official ANS Forth document is available in various formats at
<> and at
<>. The format I like best is
the HTML version <>.

To get yourself on the ANS-Forth mailing list, consult the various
README files at <>.

Two unofficial test suites are available for checking conformance to
the ANS Standard Forth:

o John Hayes has written a test suite to test ANS Standard Systems
(available through <>).

o JET Thomas has written a test suite to test ANS Standard Programs:

There is also an ANS Forth FAQ
<> that explains the
standardization process.

3.7. What is an RFI?

A Request For Interpretation. If you find something in the standard
document ambiguous or unclear, you can make an RFI, and the TC
(technical committee), that produced the standard, will work out a
clarification. You can make an RFI by mailing it to
and labeling it as RFI. The answers to earlier RFIs are available at They are also
integrated in the HTML version of the standard

3.8. Are there Coding Standards for Forth?

Leo Brodie's book Thinking Forth gives some advice; a short excerpt is
now available online <>. Forth
shops have rules for their coding. Paul Bennet has published those of
his company; you can find them on

3.9. I have trouble managing the stack. Should I use global VARI-

No. There are better alternatives:

o Keep on trying to use the stack. Reorganize (refactor) your words.
One day you will get the knack for it. Elizabeth Rather
<> writes:

The basic skill required for comfortable, efficient Forth
programming is good stack management. It's hard for newcom-
ers to learn, since it isn't a skill required in other lan-
guages, which all require the use of variables for practi-
cally everything. Having taught literally hundreds of
courses over the last 25 years, I've seen newcomers wrestle
with this, and have developed exercises (similar to those in
Starting Forth) to help. It seems to be a skill rather like
riding a bicycle: wobbly & scary at first, then suddenly a
"switch is thrown" in the brain and it seems comfortable and
natural ever after.

Andrew Haley writes in Message-ID: <7k8lln$q3c$>:

Try writing all of your code using definitions one, or at
most two lines long. Produce a stack digram for each word
showing its inputs and its outputs. If you ever need an
"intermediate" stack diagram to see what's going on, split
your word at that point into two words. By doing this, you
may test each half of the word on the command line, checking
the stack each time. Do not use PICK and ROLL.

Once you get the hang of writing code in this way you can
relax these rules, but it's much better to get used to this
style first.

o Use the return stack.

o Use locals.

o Use data structures in memory, and pass pointers to it on the

o One area that has been mentioned often as troublemaker is graphics
programming. Take a look at how Postscript handles this: They do
indeed have a global state to avoid stack management problems, but
you can access this state only through certain words.

3.10. What is the Forth Interest Group?

The Forth Interest Group "FIG" was formed in 1978 to disseminate
information and popularize the Forth language, and it remains the
premier organization for professional Forth programmers. FIG
maintains a Web page at <>, with a
more complete introduction to the Forth language, and links to the Web
pages of many Forth vendors.

3.11. Who is Chuck Moore and what is he doing?

Chuck Moore discovered (as he puts it) Forth (for historical
information read The Evolution of Forth
<>). He later went
on to apply his design philosophy to hardware design and designed a
number of processors well-suited for executing Forth: Novix 4016,
Shboom, uP20, uP21, F21, i21, ...

He also explored new ideas and refined his earlier ideas on software
and Forth: his cmForth for the Novix has been quite influential. His
latest developments are Color Forth and Machine Forth.

Machine Forth is a simple virtual machine consisting of 27
instructions. It is implemented in hardare in uP21 and the following
chips, but has also been implemented in software on the 386 as simple
native-code system. Some of the differences from ANS Forth are that
each stack entry contains an extra carry bit, and that there is
register A for accessing memory (instead of addressing through the top
of stack).

4. Flame baits

Some statements spawn long and heated discussions where the
participants repeat their positions and ignore the arguments of the
other side (flame wars). You may want to avoid such statements.

Here, I present some regularly appearing flame baits and the positions
you will read (so you don't have to start a flame war to learn them).

4.1. Commercial vs. free Forth systems

"You get what you pay for. With a commercial Forth you get commercial
documentation and support. We need commercial Forth systems or Forth
will die."

"I have had good experiences with free Forths. I cannot afford a
commercial Forth system. I want source code (some commercial vendors
don't provide it for the whole system). Examples of bad support from
commercial software vendors. Without free Forth systems Forth will

4.2. Free Forth systems are bad for Forth.

"Anyone can write a bad Forth and give it away without documentation
or support; after trying such a system, nobody wants to work with
Forth anymore. Free Forths give Forth a bad name. Free Forths take
business away from the vendors."

"Many people learned Forth with fig-Forth. There are good free Forths.
Most successful languages started with (and still have) free
implementations. Languages without free implementations (like Ada,
Eiffel and Miranda) are not very popular [There are free Ada and
Eiffel implementations now]."

4.3. Blocks vs. files

The discussions on this topic are much cooler since Mike Haas has
dropped from comp.lang.forth.

"Everyone is using files and all third-party tools are designed for
files. Files waste less space. Blocks lead to horizontal, unreadable
code. Blocks make Forth ridiculous."

"We are not always working under an operating system, so on some
machines we don't have files. We have very nice block editors and
other tools and coding standards for working with blocks (e.g., shadow

4.4. LOCALS|

Everyone who mentions using LOCALS| gets the following flame from me:

LOCALS| is bad because the locals are ordered contrary to the stack
comment convention. I.e.:

: foo ( you can read this -- ... )
LOCALS| this read can you | ... ;

The following locals syntax is better and widely used:

: foo { you can read this -- ... }
... ;

You can find an implementation of this syntax in ANS Forth at

5. Miscellaneous

5.1. Where can I find a C-to-Forth compiler?

Parag Patel <> writes:

We, (CodeGen, Inc. <>) sell a C-to-
Fcode compiler. Well, it actually generates IEEE-1275 Forth
that then must be run through a tokenizer.

Really, it generates pretty ugly Forth code. It's easy to
generate lousy Forth, but it's very difficult to generate
nice clean optimized Forth. C and stack-based languages
don't mix too well. I end up faking a C variable stack-
frame using a Forth $frame variable for local vars.

Stephen Pelc <> writes:

MPE has produced a C to stack-machine compiler. This gener-
ates tokens for a 2-stack virtual machine. The code quality
is such that the token space used by compiled programs is
better than that of the commercial C compilers we have
tested against. This a consequence of the virtual machine
design. However, to achieve this the virtual machine design
has local variable support.

The tokens can then be back end interpreted, or translated
to a Forth system. The translater can be written in high
level Forth, and is largely portable, except for the target
architecture sections.

These are not shareware tools, and were written to support a
portable binary system.

5.2. Where can I find a Forth-to-C compiler?

An unsupported prototype Forth-to-C compiler is available at
<>. It is
described in the EuroForth'95 paper
Another Forth-to-C compiler is supplied with Rob Chapman's
<> Timbre
<> system.

5.3. RECORDS in Forth?

Many packages for data structuring facilities like Pascal's RECORDs
and C's structs have been posted. E.g., the structures of the Forth
Scientific Library ( <>) or
the structures supplied with Gforth

5.4. Why does THEN finish an IF structure?

Some people find the way THEN is used in Forth unnatural, others do

According to Webster's New Encyclopedic Dictionary, then" (adv.) has
the following meanings:

2b: following next after in order ... 3d: as a necessary
consequence (if you were there, then you saw them).

Forth's THEN has the meaning 2b, whereas THEN in Pascal and other pro-
gramming languages has the meaning 3d.

If you don't like to use THEN in this way, you can easily define ENDIF
as a replacement:


5.5. What is threaded code? What are the differences between the dif-
ferent threading techniques?

Threaded code is a way of implementing virtual machine interpreters.
You can find a more in-depth explanation at

5.6. Has anyone written a Forth which compiles to Java bytecode?

Paul Curtis <> writes:

The JVM, although a stack machine, can't really be used to compile
Forth efficiently. Why? Well, there are a number of reasons:

o The maximum stack depth of a called method must be known in
advance. JVM Spec, p. 111

o JVM methods can only return a single object to the caller. Thus, a
stack effect ( n1 n2 -- n3 n4 ) just isn't possible.

o There is no direct support for unsigned quantities.

o CATCH and THROW can't be resolved easily; you need to catch
exceptions using exception tables. This doesn't match Forth's
model too well. JVM Spec, p. 112
o You'd need to extend Forth to generate the attributes required for
Java methods.

o There is no such thing as pointer arithmetic.

o You can't take one thing on the stack and recast it to another

o You can't manufacture objects out of raw bytes. This is a security

o There is no support for the return stack.

That said, it is possible to write something Forth-like using JVM
bytecodes, but you can't use the JVM stack to implement the Forth
stack. ...

If you're serious, try getting Jasmin and programming directly on the

5.7. What about translating Java bytecode to Forth?

Some of the non-trivial pieces in translating JavaVM to Forth, that we
have identified, are:

o garbage collection

o threads

o control structures (branches->ANS Forth's seven universal control
structure words)

o exceptions

o subroutines (JavaVM does not specify that a subroutine returns to
its caller)

o JavaVM makes the same mistake as Forth standards up to Forth-83: It
specifies type sizes (e.g., a JavaVM int is always 32-bit). A few
operators have to be added to support this.

o The native libraries (without them JavaVM can do nothing).

5.8. How about running Forth without OS?

A Forth system running on the bare hardware is also known as a native
system (in contrast to a hosted system, which runs on an OS). Don't
confuse this with native-code systems (which means that the system
compiles Forth code to machine code); hosted native-code systems exist
as well as native threaded-code systems.

In the beginning Forth systems were native and performed the functions
of an OS (from talking to hardware to multi-user multi-tasking). On
embedded controllers Forth systems are usually still native. For
servers and desktops most Forth-systems nowadays are hosted, because
this avoids the necessity to write drivers for the wide variety of
hardware available for these systems, and because it makes it easier
for the user to use both Forth and his favourite other software on the
host OS. A notable exception to this trend are are the native systems
from Athena.

5.9. How about writing an OS in Forth?

Native Forth systems can be seen as OSs written in Forth, so it is
certainly possible. Several times projects to write an OS in Forth
were proposed. Other posters mentioned the following reasons why they
do not participate in such a project:

If you want to write an OS in Forth for a desktop or server systems,
the problems are the same as for native Forth systems (and any other
effort to write a new OS): the need to write drivers for a wide
variety of hardware, and few applications running on the OS.

To get around the application problem, some posters have suggested
writing an OS that is API or even ABI compatible with an existing OS
like Linux. If the purpose of the project is to provide an exercise,
the resulting amount of work seems excessively large; if the purpose
is to get an OS, this variant would be pretty pointless, as there is
already the other OS. And if the purpose is to show off Forth (e.g.,
by having smaller code size), there are easier projects for that, the
compatibility requirement eliminates some of the potential advantages,
and not that many people care about the code size of an OS kernel
enough to be impressed.

J. D. Verne

Jul 4, 2000, 3:00:00 AM7/4/00
Posted-By: auto-faq 3.3 (Perl 5.004)
Archive-name: computer-lang/forth-faq/part2

Posting-Frequency: Monthly. A how-to-find-the-FAQ article is posted weekly.

comp.lang.forth Frequently-Asked Questions, part 2 of 7
Online Resources: Web, FTP and Email
John D. Verne <>
Last modified: $Date: 1999/07/23 02:27:09 $

A concise guide to Forth related online resources. Send additions,
deletions or changes to John D. Verne <>. Please
see the Forth Online Resources Quick-Reference Card <>. A detailed hardcopy version with
additional data is available in Forth Dimensions
<> magazine.

Table of Contents

1. Introduction

2. Personal and Commercial WWW Servers

3. Public File Repositories

4. News and Email Resources

4.1 Internet Mailing Lists
4.2 Commonly Requested Email Addresses
4.3 Newsgroups and Conferences

5. Bulletin-Board Systems (BBS)


1. Introduction

This is part two of a seven part document covering many aspects of the
Forth programming language. All seven parts are posted monthly to the
USENET newsgroups comp.lang.forth, comp.answers, and news.answers.
They are updated regularly.

This part is primarily concerned with being a concise quick-reference
guide to the many online Forth resources available. Specifically, it
attempts to answer the questions, "Where can I find the Forth

For more information on Forth or other Forth resources, please consult
the other parts of this FAQ. They can be found at:

o <>

o <>

This document was adopted in it's entirety from the "online" FAQ
created by Kenneth O'Heskin.

To request a change or report an error, please contact the author

This document is placed entirely in the public domain. You may quote
freely from it, as long as you play nice and give us some credit.
This document comes with no guarantees and is provided for your
information only. Trademarks are the property of their respective
owners. Your mileage may vary etc., etc., etc.

2. Personal and Commercial WWW Servers

These sites are primarily Forth-oriented. Some are very product
specific, while others are more for general programming interest. If
you find any broken links or know of any pages that need to be
included here, please let me know <>.

o The ATLAST <> (Autodesk Threaded Language
application System Toolkit) embedded system pages. You can
download ATLAST from here, as well.

o The Bournemouth Forth Redearch Page
<>. Links to the
Journal of Applied Forth and Research (JFAR), FAQs, Rochester Forth
Conference and more. Very complete Forth bibliography.

o euroFORTH <>, The
European Forth Conference home page. Access to the latest news on
the conference, as well as links to the euroFORTH mail list

o Forth Interest Group <> (FIG) home
page. FIG membership information, FAQs, bibliographies, downloads
and more. Information on local chapters and a members-only
section. Home of "Forth Dimensions" magazine.

o The FORTH, Inc. <> Home Page is a commercial
site dedicated to FORTH, Inc.'s very complete product line.
Ordering and training information available online.

o Frank Sergeant's <> home
page. The author of Pygmy Forth has many articles and links
available on his pages.

o Immersive Systems, Inc. <> have links and
technical information about Meme, their Forth-powered extensible
virtual reality product.

o Forth Research at Institut fuer Computersprachen
<> has
technical documents, Forth code and many Forth links. Some
downloads available.

o Jeff Fox's UltraTechnology <> Home
page. Home of Offete Enterprises, Inc. and the source for
information about the MuP21 Forth engine. Books, video tapes and a
diverse range of software available.

o The Journal of Forth Application and Research
<> and it's UK mirror
<>, published by
the Institute for Applied Research, Inc. Author's guides and
ordering information available.

o Laboratory Microsystems Inc. (LMI) <>
have an online catalog and software updates for their wide range of
Forth systems.

o The Forth Source <> is the home of
Mountain View Press. Tutorials, educational software and guides.
The Forth education source.
o The Mops Page <> is the
place for FAQs and information on Mops Forth for the Mac. Plenty
of documentation and code available.

o New Micros Inc. (NMI) <> publish
information and an online catalog for their range of Forth-powered
Single-Board Computers.

o FirmWorks <> is the source for information
on Open Firmware. Dedicated to the development of the IEEE 1275
standard. If you need information on Open Firmware, start here.

o Patriot Scientific Corporation <> publishes
information on their PSC1000 (ShBoom) 32-bit RISC microprocessor
family, as well as their many other products. Some Forth
information links.

o Phil Koopman's <> Home Page has
extensive links to Forth, stack computers and embedded systems.
Several articles and technical papers are publicly available.

o The Pocket Forth Page <>,
home of Pocket Forth for the Mac. Tutorials, downloads and code
examples abound.

o The Rochester Forth Conference
<>, organized by
the Institute for Applied Forth Research (JFAR), Inc. This is the
place for Conference proceedings.

o The Rocky Coast Free Board <> is the
web incarnation of the RCFB dialup BBS. Lots of information on
Forth, Java and programming.

o The home of JForth <> for the
Amiga has FAQs, news and downloads.

o The Computer Journal <> is a good place
for legacy system information. Very Forth-friendly publication.

o Tout sur le Forth <> en France, the
source for French-language Forth resources.

o Visit Triangle Digital Services, Ltd.
<> for information
on their Forth-powered Single-Board Computers. Very complete
online catalog.

3. Public File Repositories

These sites offer anonymous FTP access to Forth files and resources.
URLs can change rapidly. Please let me know <> if
you find broken links, or know of more Forth-oriented FTP sites.

o Official ANS Forth x3j14 <> Committee ftp site.
This is where to get the (un)official ANS-Forth documents. [need
to find exact link --jdv]

o Cygnus Support FTP Service <> is a
huge ftp site with many Forth systems available.

o Brad Rodriguez' CamelForth can be downloaded from here
<>. You may also want to visit the
CamelForth web site <>.

o The University of Michigan Department of Physics has a few Forth
implementations available here

o Dwight Elvey <> has made a few Forth
resources available.

o Marcel Hendrix <> has an
extensive collection of Forth implementations available to the

o Taygeta Scientific, Inc is the host of
<>. This is simply the most complete
collection of Forth resources out there. [need Bremen mirror
address --jdv]

o This is the place for Yerk <>
(Forth for the Mac) manuals, information and code.

4. News and Email Resources

4.1. Internet Mailing Lists

[Anybody care to expand on this list? --jdv]

o To subscribe to the MISC mailing list <mailto:misc-> send an email with "subscribe" in the

o To subscribe to the Win32For mailing list <mailto:win32for->, send an email with "subscribe"
as the only line in the body of the message.

o To subscribe to the euroFORTH <mailto:euroforth-> mail list, just send an empty message.

o To subscribe to any of the following Forth mailing lists, send an
email <> with the appropriate
subscribe line as the only text in the body:

o subscribe BigForth (BigForth list)

o subscribe GForth (GForth list)

o subscribe Minos

o subscribe JForth-List (Amiga JForth List)

o subscribe 4th-List (Original 4th learning list)

4.2. Commonly Requested Email Addresses

These are the most commonly requested email addresses on

o For information on the ANS Forth process, please contact the
ANSForth Mail Group <mailto:ansforth-request@minerva>

o To contact the Forth FAQ authors, or request a change the the FAQ,
please email the Forth FAQ Maintainers <>

o The Forth Interest Group <> (FIG):

o FIG Board of Directors <> (everyone)

o Forth Dimensions Editor <> (Marlin

o FIG business office <> (John Hall)

o FIG President <> (Skip Carter)

o FIG Secretary <> (Brad Rodriguez)

o FIG Treasurer <> (Andrew McKewan)

o FIG Vice President <> (Jeff Fox)

o Secretary of the FORTH Gesellschaft <mailto:secr...@admin.forth-> (German Forth users' group)

o Editor of the Journal of Forth Application and Research

4.3. Newsgroups and Conferences

These are the primary Forth newsgroups and public conferences. Please
let me know <> if you know of any others.
Specifically, I know there are several non-English Forth newsgroups.
Does anyone care to comment?

o The unmoderated comp.lang.forth <news:comp.lang.forth> USENET
newsgroup is carried on most newsfeeds. Archived messages
<> are available. [need to
find good archive URL --jdv]

o Macintosh specific Forth news is found on the unmoderated
comp.lang.forth.mac <news:comp.lang.forth.mac> newsgroup.

5. Bulletin-Board Systems (BBS)

These are the publicly available Forthish Bulletin-Board Systems that
we still know about. This information is presented for legacy reasons
only. The status of these numbers is unknown. I'm starting to feel
all nostalgic about my first 300 baud modem...

o Arcane Incantations, 617-899-6672

o Art of Programming BBS, 604-826-9663

o Bitter Butter Better BBS, 503-691-7938

o Gold Country Forth BBS, 916-652-7117

o Laboratory Microsystems, Inc (LMI), 310-306-3530

o MindLink <telnet://>, 604-528-3500

o The FROG Pond BBS, 716-461-1924

End of file

J. D. Verne

Jul 4, 2000, 3:00:00 AM7/4/00
Posted-By: auto-faq 3.3 (Perl 5.004)
Archive-name: computer-lang/forth-faq/part3

Posting-Frequency: Monthly. A how-to-find-the-FAQ article is posted weekly.

comp.lang.forth Frequently Asked Questions, Part 3 of 6
Forth Vendors
1 July 1999

Send all Corrections, Additions, and/or Deletions to: (and I know there are many)
L. Greg Lisle

These Organizations are primarily software, systems and support

Bradley Forthware, Inc. ; Mitch Bradley ; 415 961-1302
PO Box 4444 ; Mountain View CA , 94040 ; USA
ForthMon, Forthmacs, C Forth ; 415 962-0927 ;
Specialists in IEEE Std 1275 Open Boot Firmware

Brian Mathewson ; Brian Mathewson ;
21576 Kenwood Ave. ; Rocky River OH , 44116 ; USA
Forth/2 ; ;
OS/2 platform

Canadian Mind Products ; Roedy Green ; 604 684-6529
#162 - 1020 Mainland St. ; Vancouver BC , V6B 2T4 ; Canada
BBL ; 604 684-5541 ;

DFW ; Willem Ouwerkerk ; (+31) 26 443-1305
Oranjestr 8 Utrecht. ; Arnhem , ; Netherlands
tForth for T4 & T8 transputers ; ;
BBS: (+31) 26-442-2164 (9600 bps)

FORTH, Inc ; Steve Agarwal ; 800 553-6784
0 ; Manhattan Beach CA , 90266 ; USA
SwiftForth, chipFORTH, polyFORTH, MacForth ; 310 318-7130 ;
Extensive Products & Services for many platforms & processors

Forthware ; Hanno Schwalm ;
Holunderstr. 10 ; D-28207 Bremen , ; Germany
Forthmacs 3.1 for RISC/OS Acorn ; ;

Frog Peak Music ; Larry Polansky ; 603 448-8837
PO Box A36 ; Hanover NH , 03755 ; USA
HMSL - Hierarchical Music Specification Language ; ;
HMSL is a set of music related Forth extensions

FS Forth-Systeme GmbH ; Klaus Flesch ; 7667-551
PO Box 1103 ; 7920 Breisach , ; Germany
SwissForth, agents for LMI ; (07667)555 ;

Harvard Softworks ; James Callahan ; 513 748-0390
PO Box 69 ; Springboro OH , 45066 ; USA

Immersive Systems, Inc. ; ; (415) 641-8748
4487 23rd St. #2 ; San Francisco CA , 94114 ; USA
Meme (tm) ; ;
Multitasking Extensible Messaging Environment

Jack J. Woehr (Jax) ; Jack J. Woehr ;
PO Box 51 ; Golden CO , 80402 ; USA
Jax4th for WinNT/Amiga, FIJI ; ;
Author of programming books, JAXOOPS & Jax4th

Joerg Plewe ; Joerg Plewe ; (+49)-(0)208-497068
Haarzopfer Str. 32 ; D-45472 Muelheim , an der Ruhr ; Germany
F68K, F68ANS ; ;
Forth for the M68000

Laboratory Microsystems, Inc. (LMI) ; Ray Duncan ; 818 997-6874
PO Box 10430 ; Marina Del Rey CA , 90295 ; USA
UR/FORTH, WinForth ; 310 645-0059 ;
WinForth Shareware for Windows, LMI Forth-83 Metacompiler

M. Anton Ertl ; Anton Ertl ;
; , ;
Gforth for WIN32/Linux/DOS/OS2 ; ;

Marcel Hendrix ; Marcel Hendrix ; +31-495-541529
iForth for protected-mode DOS/Windows NT 4.0/Linux ; 6006 KL Weert , ;
iForth, MANX ; ;
iForth for protected-mode DOS/Windows NT 4.0/Linux

Micromotion ; ; 213 821-4340
12077 Wilshire Blvd. #506 ; Los Angeles CA , 90025 ; USA
MasterForth ; ;
Forth for various machines

MicroProcessor Engineering Ltd. ; Stephen Pelc ; +44 1703 631441
133 Hill Lane ; Southampton , SO15 5AF ; England
PowerForth, ProForth ; +44 1703 339691 ;
Large range of cross compilers

Miller Microcomputer Services ; A. Richard Miller ; 508 653-6136
61 Lake Shore Road ; Natick MA , 01760-2099 ; USA
MMSFORTH and many application modules and hard-to-find Forth Books

Mountain View Press ; Glen Haydon ; 415 747-0760
Star Rt 2 Box 429 ; La Honda CA , 94020-9726 ; USA
MVP Forth (which I wrote) ; 415 747 0760 x 3 ;
Literature & Software for many platforms

MP7 ; Marc Petremann ; (33) 1 43 03 40 36
17, allee de la Noiseraie ; F - 93160 NOISY , LE GRAND ; France

Turbo-Forth ; ;
TURBO-Forth, FASTGRAF graphics & I/O pkg, French-language books

Offete Enterprises, Inc. ; C.H. Ting ; 415 574-8250
1306 South B St. ; San Mateo CA , 94402 ; USA
eFORTH, F83 & ANS ; 415 571-5004 ;
Books & Software for figForth, eForth, F83, FPC, ANS etc

Silicon Vision ; ; 0181 422 3556
0 ; Harrow , ; UK
RiscForth for Acorn Archimedes ;

Tom Almy ; Tom Almy ;
17830 SW Shasta Trail ; Tualatin OR , 97062 ; USA
ForthCMP ; ;
Native Code Forth Compiler (ANS or 83 Std) for 80x86, MS-DOS

These Organizations are primarily other

Extensible Systems, Products & Technology (ESPT) ; Scott Woods ; 414
Extensible Systems ; Delavan WI , 53115-0881 ; USA
Books & Shareware ; 414 728-2881 ;

Forth Interest Group ; Trace Carter ; 408 373-6784
100 Dolores St. #183 ; Carmel CA , 93923 ; USA
Forth Dimensions ; 408 373-2845 ;
Literature & Software Source

Institute for Applied Forth Research ; Laurence Forsley ; 716 235-0168
PO Box 1261 ; Annandale VA , 22003 ; USA
; 716 235-0168 ;
Journal of FAR

These Organizations are primarily hardware vendors

Ampro Computers Inc. ; ; 408 522-4825
990 Almanor Ave. ; Sunnyvale CA , 94086 ; USA
; 408 720-1305 ;

EMAC Inc. ; Eric Rossi ; 618 529-4525
PO Box 2042 ; Carbondale IL , 62902 ; USA
SBC ; 618 457-0110
Single Board Computers

HiTech Equipment Corp. ; Tim O'Hara ; 619 566-1892
9400 Activity Rd. ; San Diego CA , 92126 ; USA
SBC ; 619 530-1458 ;

Inovative Integration ; James Henderson ; 818 865-6150
31352 Via Colinas #101 ; Westlake Village CA , 91362 ; USA
; 818 879-1770 ;
TMS320C31, C32, C25, C44

Merrimack Valley Systems ; Richard Smith ; 508 792-9507
PO Box 850 ; Merrimack NH , 03054 ; USA
SBC ; 508 757-8769

Minimum Instruction Set Computer, Inc. ; Charles Johnson ; 303 680-9749
19704 East Loyola Circle ; Aurora CO , 80013 ; USA
MISC processor

Mosaic Industries, Inc ; Patrick Campbell ; 510 790-1255
5437 Central Ave Ste 1 ; Newark CA , 94560 ; USA
QED Single Board Computers ; 510 790-0925 ;

New Micros, Inc. (NMI) ; Randy M. Dumse ; 214 339-2204
1601 Chalk Hill Rd ; Dallas TX , 75212 ; USA
Max-FORTH, NMIX boards ; 214 339-1585 ;
Single Board Forth Machines, 68HC11 and more

Opto 22 ; Bob Sheffres ; 909 659-9299
43044 Business Park Dr. ; Temecula CA , 92590 ; USA
; 909 695-3095

Orion Instruments, Inc ; Wayne Lefkowitz ; 800 729-7700
1376 Borregas Ave. ; Sunnyvale CA , 94089-1004 ; USA
; 408 747-0688 ;
Microprocessor Emulator/Analyzer

Saelig Company ; Alan Lowne ; 716 425-3753
1193 Moseley Rd. ; Victor NY , 14564 ; USA
; 716 425-3835 ;
Rep for Triangle Data Svs

Silicon Composers Inc. ; George Nicol ; 415 961-8778
655 W. Evelyn Ave. #7 ; Mountain View CA , 94041 ; USA
FOX SBC's ; 415 961-6778 ;
RTX 2000 & SC32 boards

Triangle Digital Services Ltd. ; Peter Rush ; +44-181-539-0285
223 Lea Bridge Road ; London UK , E1O 7NE ; England
TDS2020 & others ; +44-181-558-8110
SBC w/ on board Forth

Vesta Technology, Inc ; Cyndi Reish ; 303 422-8088
7100 W. 44th Ave Ste 101 ; Wheat Ridge CO , 80033 ; USA
Forth-83+ ; 303 422-9800

SBC w/ Forth in ROM

VME Inc. ; ; 408 946-3833
538 A Valley Way ; Milpitas CA , 95035 ; USA
; 408 946-0351

These Organizations are primarily custom consulting

4th Wave Computers Ltd. ; Peter Caven ; 905 335-6844
2314 Cavendish Drive ; Burlington ON , L7P 3P3 ; Canada
; ;
Custom SW Development in Forth & C

A Working Hypothesis, Inc ; Paul Frenger ; 281-293-9484
associate editor for Forth ; Houston TX , 77282 ; USA
; 281-293-9446 ;
associate editor for Forth ACM Sigplan Notices

AM Research ; Albert Mitchell ; 800 949-8051
4600 Hidden Oaks Lane ; Loomis CA , 95650-9479 ; USA
; 916 652-6642 ;
8051, 6811 & 80C166 Forth Dev Systems

Bergstrom Consulting ; Gary Bergstrom ; 440 247 2031
Forth software for embedded control ; Chagrin Falls OH , 44022 ; USA
Forth software for embedded control, analog and micro (particularly the HC11 &
HC12) hardware. ; ;

Bernd Paysan ; Bernd Paysan ; ++49 89 798557
Stockmannstr. 14 ; 81477 Muenchen , ; Germany
BigFORTH 386, ST ; ++49 89 794378 ;
Object Oriented

Blue Star Systems ; Mike Warot ;
PO Box 4043 ; Hammond IN , 46324 ; USA
Forth/2 ; ;
A direct threaded implementation of forth for OS/2 text mode, 32b

Chris Heilman ; Chris Heilman ;
PO Box 8345 ; Phoenix AZ , 85066-8345 ; USA
PocketForth ; ;

Compucyber, Inc. ; Boris Bibershtein ; 416 733-1630
PO Box 3182 ; North York ON , M2M 3A6 ; Canada
both F-PC and LMI Forth

Computer Continuum ; Eric Reiter ; 415 755-1978
75 Southgate Ave. #6 ; Daly City CA , 94015 ; USA

Specialists in Motion control and data acquisition

Delta Research ; Phil Burk ; 415 453-4320
PO Box 151051 ; San Rafael CA , 94915 ; USA
JForth, HMSL ; ;
JForth is a subroutine thread Forth for Amiga.

Frank Sergeant ; Frank C. Sergeant ;
809 W. San Antonio St. ; San Marcos TX , 78666 ; USA
Pygmy ; ;
Forth Programming; microprocessors to business systems

Julian V. Noble ; Julian V. Noble ;
; VA , ; USA
; ;
"Scientific Forth"

L Squared Solutions ; L. G. Lisle ; 336 924-0629
2160 Foxhunter Ct. ; Winston-Salem NC , 27106 ; USA
Pygtools for Pygmy ; ;
Engineering consulting using Forth for industry

Michael Hore ; Michael Hore ; +61-2-557-5836
54 Frederick St ; Sydenham NSW , 02044 ; Australia
Mops ; ;
Mops is a PD OOP system

NSolntseff Information Engineering ; Nicholas Solntseff ; 416 627-0449
62 Sydenham St. ; Dundas OT , L9H 2T9 ; Canada
; ;

Paul E. Bennett ; Paul Bennett ; +44 (0)7971-620145
0 ; Bristol , BS15 1HX ; UK
Forth based HIDECS Consultancy ; ;
Company Emphasizes Safety Critical Systems

Redshift Limited ; Charlie Springer ; 206 564-3315
726 No. Locust Lane ; Tacoma WA , 98406 ; USA
; ;
A simple 32 bit indirect threaded Forth for ARM

Rob Chapman ; Rob Chapman ; 403 430-2605
11120-178 st. ; Edmonton AB , T5S 1P2 ; Canada
botKernel, Timbre ; 403 430-2772 ;

Science Applications International Corp. ; Norman Smith ; 615 482-9031
301 Laboratory Road ; Oak Ridge TN , 37831 ; USA
Until, LMI, Uniforth ; 615 482-6828 ;
"Write Your Own Programming Lang. w/ C++"

TOS Systems Inc. ; Roger Stern ; 617 431-2456

PO Box 81-128 ; Wellesley MA , 02181 ; USA
LMI ; 617 431-2456 ;
Software & Hardware Consulting

T-Recursive Technology ; Brad Rodriguez ; 705-727-3633
115 First St. ; Collingwood ON , L9Y 4W3 ; Canada
CamelForth ; ;
Contract programming & hardware design for small/embedded systems

Ultra Technology ; Jeff Fox ; 510 848-2149
2510 10th St. ; Berkekey CA , 94710 ; USA
P21Forth ; ;
I do consulting on systems besides MuP21 and F21,

These Organizations are primarily unknown

Bryte Computers ; Cliff McClellan ; 207 547-3218
PO Box 46 ; Augusta ME , 04330 ; USA
8051 code

Charles Curley ; Charles Curley ; 303 490-2944
111 E. Drake #7091 ; Fort Collins CO , 80525 ; USA
realFORTH ; ;

Computer Cowboys ; Charles Moore ; 415 851-4362
410 Star Hill Rd. ; Woodside CA , 94062 ; USA
; ;
Forth engine kit w/ NC4000

Concept 4 ; ;
PO Box 204 ; Lincoln CA , 95648 ; USA
Prolog Impl. of Forth, other prod.

Digalog ; ; 805 644-9928
PO Box 3315 ; Ventura CA , 93006 ; USA
Industrial Appl. in Forth

Granite Microsystems ; Beau Moore ; 414 242-8816
10202 N. Enterprise Dr. ; Mequon WI , 53092 ; USA
; 414 242-8825

Inner Access Corp. ; Coralin Feierbach ; 415 591-8295
PO Box 8888 ; Belmont CA , 94002 ; USA
Zilog Super-8 Dev. Sys.

InSite Computing ; ; 313 994-3660
PO Box 2949 ; Ann Arbor MI , 48106 ; USA


Kelly Enterprises ; Guy Kelly ;
2507 Caminito La Paz ; La Jolla CA , 92037 ; USA
KForth ;
Said placed all products in public domain

Micro Computer Applications Ltd ; ; 203 426-6164
8 Newfield Lane ; Newtown CT , 06470 ; USA

Microtronix Systems Ltd ; Brian Fox ; (519) 659-9500, Ext 259
200 Aberdeen Dr ; London OT , N5V 4N2 ; Canada
; (519) 659-8500 ;

Next Generation Systems ; ; 408 241-5909
PO Box 2987 ; Santa Clara CA , 95055 ; USA

Paladin Software, Inc. ; James Dewey ; 619 490-0368
3945 Kenosha Ave. ; San Diego CA , 92117 ; USA
; 619 490-0177

Palo Alto Shipping Co. ; Jef Raskin ; 800 443-6784
PO Box 7430 ; Menlo Park CA , 94026 ; USA
Mach1 ;
DTC for 68000

Robert J. McDonald ; Robert J. McDonald ;
2326 Redfern Road ; Burlington OT , L7R 1X3 ; Canada
; ;

SDS, Inc. ; ; 514 461-2332
2865 Kent Ave. #401 ; Montreal QC , H3S 1M8 ; Canada
SDS Forth ;
for 8051

Shaw Laboratories, Ltd. ; George Shaw ; 510 276-5953
PO Box 3471 ; Hayward CA , 94540 ; USA
TaskFORTH ; 415 276-6050 ;

Single Board Solutions Inc. ; Tom Cramer ; 408 253-0250
20065 Stevens Creek Blvd. ; Cupertino CA , 95014 ; USA
; 408 253-8298

Software Construction Company ; Paul Snow ; 409 696-5432
PO Box 10646 ; College Station TX , 77842 ; USA
Fifth ; 409 696-0684

SOTA Computer Sys. Lmt ; ; 604 688-5009
213-1080 Broughton St. ; Vancouver BC , V6G 2A8 ; Canada

UBZ Software ; Larry Daniel ; 404 948-4654
395 St. Albans Ct. ; Mableton GA , 30059 ; USA

Upper Deck Systems ; Peter Graves ; 619 741-1075
PO Box 263342 ; Escondido CA , 92026 ; USA

VI Computer ; Harry L. White ; 619 632-5823
531 Encinitas Blvd. Ste 114 ; Encinitas CA , 92024 ; USA
; 619 632-5829

My goal is a spare, consistent listing for each vendor.
Since the FAQ Part 4 lists details of the various systems,
my idea for this FAQ is more of a directory with easy to
find and read entries. If you are interested, I have
this data available in a data base format, either
.DBF .WDB comma or Tab delimited. (Maybe even .WKS)

The Format (as much as possible) is:

Company Name; Contact Person: Voice Phone
Mailing Address; w/ country
Products; Fax #
EMail Addr; Web Page
One Line description (approx 64 char)

J. D. Verne

Jul 4, 2000, 3:00:00 AM7/4/00
Posted-By: auto-faq 3.3 (Perl 5.004)
Archive-name: computer-lang/forth-faq/part5

Posting-Frequency: Monthly. A how-to-find-the-FAQ article is posted weekly.

comp.lang.forth Frequently Asked Questions, part 5 of 6
Books, Periodicals, and Tutorials

Chris Jakeman, 3 Dec 1999

Changes since the previous posting are marked with a "|".
Please send your updates, comments or suggestions to me


| Subject: Table of Contents

[1] Books - Organisation
[2] Books - Tutorial
[3] Books - Advanced
[4] Books - Related
[5] Periodicals
[6] Standards Documents
[7] On-line - Tutorials
[8] Other documents
[9] Suppliers
| [10] Libraries
[11] Indexes


Subject: [1] Books - Organisation

There is not space here to provide an abstract to every book on Forth.
Instead this is a guide to those items which Forth users have found
most helpful, together with a list of other Forth books. If you have
been especially helped by a book, please write me an abstract for it.

Where publications are not widely available, a supplier is listed.
Approximate prices are given as a guide.


Subject: [2] Books - Tutorial

"Starting FORTH: an introduction to the FORTH language and operating
system for beginners and professionals" Leo Brodie, Prentice Hall 1981
(2nd Ed., 1987), 346 pages, ISBN 0-13-843079-9, price $29.
An ANS version is in preparation.

Chris Jakeman <> writes:
This is the classic introduction to Forth, with helpful cartoons,
exercises and solutions. See also Brodie's "Thinking Forth" below.

Glen Haydon writes "To try out the exercises, use MVP Forth which
matches exactly except for ' (tick). See"
Forth Guide, from Mountain View Press, is a guide to MVP Forth and
complements Starting Forth and is available on-line at

The exercises have also been ported to ANS Forth by Ben Hoyt, see

"The Forth Programmer's Handbook" E.Conklin & E.Rather, Forth Inc.
1997, 228 pages ISBN 0-9662156-0-5, price $50.

This book is aimed at experienced programmers new to Forth and is
more detailed and technical than "Starting Forth". It is also a
good reference for ANS Forth. See for excerpts.

"The Forth Course" Richard Haskell, 156 pages with disk, price $25,
supplier FIG.

FIG writes:
This set of 11 lessons is designed to make it easy for you to learn
Forth. The material was developed over several years of teaching
Forth as part of a senior/graduate course in desing of embedded
software computer systems at Oakland Univeristy in Rochester,

"FORTH: A Text And Reference" Mahon Kelly and Nick Spies,
Prentice-Hall, 1986, 487pps ISBN 0-13-326331-2 and in hardcover
0-13-326349-5, $19 and $25 from MMS below.

Dick Miller <> writes:
Very readable, covers beginner level through relatively advanced,
including Assembler and 8087 math co-processor details, particularly
appropriate to IBM PC and MMSFORTH, but very strong for general use
as well. The only college-level Forth textbook, complete with
exercises and answers.

"Forth Applications In Engineering And Industry" John Matthews,
Ellis Horwood, 1989 ISBN 0-85312-659-3, price UKP35.
Currently out of print, this book may be available from libraries.

MPE Ltd. <> writes:
If you are starting out in the field of real-time control of hardware
using Forth, then this book is for you! This text covers most
aspects of real-time control under Forth, from the very basics of
what Forth is, through to control loops and digital implementations
of analogue filters.

"Embedded Controller FORTH for the 8051 family" William H. Payne,
Academic Press, 1990, 511 pages with DOS disks, ISBN 0125475705,
price $80 book, $20 disk.

J. Fulcher, Computing Reviews, 9105-0316 writes:
... This hobbyist-style book goes into considerable detail regarding
the implementation of FORTH on the i8051 family of microcontrollers
(down to circuit diagrams, PCB layouts, and wire-wrap board
schematics) ... Almost two-thirds of this book is devoted to
appendices -- 19 in all. These primarily contain code listings ...

Paul Frenger, SIGFORTH, 2(4):31-32, 1990 reviews the book and gives
it 10/10. Notes that the book contains everything you need: all the
source is there as well as all the circuit diagrams. There are 19
appendices, which make up half of the book, and contain things like:
the source to the 8086 Forth, 8051 Forth, full screen editor code,
8051 disassembler code, Nautilus metacompiler, 8086/8051
meta-assemblers, Forth decompilers and much more.

"Forth from Inside" Viviane Beullens, on-line only, 1998, 100 pages,
contact, price $30
Intended Audience: Beginners in Forth programming
Reasons to read it: to get started in Forth

Paul Frenger <> writes:
I just got the Forth Archive CD/ROM from MVP (see section 7) and it's great!
Glen Haydon also has an excellent collection of Forth books and software,
much of it seminal (ie: ancient), that FIG no longer carries or never
carried. His "All About Forth" reference is the single most useful
Forth-internals book I have ever seen."

Other titles are:
93, Koller, FORTH und FORTH-Prozessoren, expert-verlag, 3-8169-0785-7
92, Petremann and Guillaumaud, TURBO-Forth: TFGRAF Manuel du package
graphique pour TURBO-Forth, MP7
90, Zech, Forth for Professionals, Ellis Horwood, 0-13-327040-8
88, Anderson and Tracy, Mastering Forth
87, Henric-Coll, La Practique du Forth avec Hector I
87, Zech, Die Programmiersprache FORTH, Franzis-Verlag GmbH Muenchen,
Recommended by Dusan Vukic <>
and Andreas Jung <>
It describes mainly the Fig-Forth model and goes deeply
into details. The dialects Forth-79 and Forth-83 are also described
in a special chapter.
86, TURBO-Forth: Manuel d'apprentissage, REM Corp
86, TURBO-Forth: Guide de référence, REM Corp
85, Bishop, Exploring Forth, Prentice-Hall, 0-246-12188-2
85, Burnap, Forth, The Fourth-Generation Language
85, McCabe, Kevin, et Axel Harvey, _Le_Forth_, 1985, Mount Royal (Quebec),
Modulo, ISBN 2-89113-048-0; Paris (France), Belin, ISBN 2-7011-0587-0.
85, Olney and Benson, Fundamental Forth, Pan Books
85, Petremann, Zupan and Presmenil, FORTH pour CP/M & MSDOS, Loisitech
85, Salman, Forth, Macmillan 0-333-36798-7
84, Anderson, Mastering Forth, Bowie (yes, same title as Tracy above :)
84, Armstrong, Learning Forth
84, Chirlian, Beginning Forth
84, Lampton, Forth for Beginners
84, Oakley, Forth For Micros, Newnes Technical Books, 0-408-01366-4
84, Petremann and Rousseau, Tours de Forth, Eyrolles
84, Wainwright, BASIC & Forth In Parallel, Babani (Pub.), 0-85934-113-5
83, de Grandis-Harrison, Forth on the BBC Microcomputer, 0-907876-06-4
83, McCabe, Forth Fundamentals, Matrix
83, Petremann and Rousseau, ZX-FORTH, Eyrolles
83, Winfield, The Complete Forth, Sigma Technical Press, 0-905104-22-6
82, Hogan, Discover Forth, Osborne
82, Scanlon, Forth Programming, Sams
81, Katzan, Invitation to Forth, Petrocelli Books
81, Knecht, Introduction To Forth, Sams
??, Hendtlass, Real-Time Forth (on-line in Postscript format from at
??, Pitman, Pocket Guide to Forth

MVP-Forth Series
1 - All About Forth, '90, Haydon
2 - MVP Forth source listings, '83?, Haydon & Kuntz
3 - Integer and Floating Point, '83, Koopman
4 - Expert System, '84, Park
5 - File Management System, '84, Moreton
6 - Expert Tutorial, '84, Derick
7 - Forth Guide, '85, Haydon
8 - IBM Professional Application Development System, '85, Wempe
9 - Word Processor And Calculator, Programmers Guide, '85, Wempe
10 - Word Processor And Calculator, File & Print source, '85, Wempe

See also the FAQ: on-line - part 2/6, for tutorials and Forth systems to
try them on.


Subject: [3] Books - Advanced

"Scientific FORTH: a modern language for scientific computing"
Julian V. Noble, Mechum Banks Publishing, 1992, 300 pages,
ISBN 0-9632775-0-2, price $50 incl. disk.
(1st Ed. sold out, FIG still has a few, also Peer-To-Peer
Communications Inc, San Jose CA at $40 without disk)

Julian V. Noble <j...@fermi.clas.Virginia.EDU> writes:
While not intended for the Forth novice, Scientific FORTH contains a
good many serious examples of Forth programming style, useful programs,
as well as innovations intended to simplify number crunching in Forth.
It can now be found in the libraries of several major universities
(e.g. Yale, U. of Chicago and Rockefeller U.) and government and
industrial laboratories (e.g. Fermilab and Motorola). It comes with a
disk containing all the programs discussed in the book.

"Thinking FORTH" Leo Brodie, Prentice Hall, 1984, ??? pages,
ISBN: 0-13-917576-8 and 0-13-917568-7 (pbk.), price $20.

Dick Miller <> writes:
This is a top-notch book on strategy, and always was our [MMS] top
recommendation for the SECOND book, after you bought a textbook to
learn the Forth words. This one teaches you which ones to select
when, how to hone your habits for better Forth (and other)
programming, etc. It's been unavailable for a year or two, and has
been reprinted at last! MMS has worked to reduce its price from a
proposed $40 (in paperback), and is pleased to offer it at $19.95.

"Forth: The Next Step" Ron Geere, Addison-Wesley, 1986, 89 pages,
ISBN 0-201-18050-2, price ??.

Stephen J. Bevan <> writes:
As the title might suggest, this is not for the complete beginner.
It is aimed at those who have mastered the idea of reverse polish
... etc. and now want to do something a bit more complicated.
Covers areas like: using double length numbers, formatting,
reading/writing values from/to a port and `infinite' precision

"Object-oriented Forth - Implementation of Data Structures" Dick Pountain
Academic Press, 1987, 108 pages, ISBN 0-12-563570-2, price $35.

Chris Jakeman <> writes:
Pountain <> is a Byte contributing editor. His "book
sets out to develop systematic ways of constructing complex data
structures in Forth ... with a few easy to use syntax extensions to
the language." Efficient techniques for records and arrays are
presented and refined with great clarity. Objects are built from
these by adding methods with a small change to the dictionary
structure. The techniques are demonstrated using lists, a heap and
a dynamic simulation of queuing at the bank.

"Forth: The New Model - A Programmer's Handbook" Jack Woehr,
M&T Publishing, 1992, 315 pages, ISBN: 0-13-036328-6, DOS disk included,
price $45.

Describes features of ANS Forth and how to use it to write portable
Forth programs. Published 2 years before the Standard was approved,
it predicts the Standard very closely. Currently the only book about
ANS Forth.

Ong Hian Leong <> writes:
The author is (as at time of print) VP of Forth Interest Group and
member of X3J14, so he presumably knows what he's talking about. 8-)

Threading mechanisms:
Stephen Pelc <> says "The best analysis of the
tradeoffs of threaded code and memory performance can be found in
Interpretation and Instruction Path Coprocessing by Eddy H. Debaere
and Jan M. Van Campenhout, MIT Press, ISBN 0-262-04107-3"

Mike Coughlin <> writes: The best article ever
published on the subject, "Varieties of Threaded Code for Language
Implementation" by Terry Riter and Gregory Walker, Byte Magazine,
Sep. 1980 (not in August which was a special Forth issue) and
reprinted by FIG along with the other Forth articles from Byte.
Also available on the Byte CD.

Also see Anton Ertl's paper at

Neal Crook <> recommends "a good paper" by
Brad Rodriguez, from a series in "The Computer Journal" at in which he
specifically addresses the question of choosing a threading model
for a given processor.

For some notes on token-threading, try looking at stuff related to
Brad Eckert's Firmware Factory, at

"Designing and Programming Personal Expert Systems" Townsend, Carl,
Feucht, Dennis, TAB Books Inc, 1986, ISBN: 0-8306-2692-1. Not in print.

Contains LISP and Prolog emulations in Forth, including a unification
algorithm. It also has some minimum distance classifier code. The
application is fault diagnosis in locomotives.

Carl Townsend & Dennis Feucht, _Designing and Programming Personal Expert
Systems_, Tab Books, 1986.

"eForth Implementation Guide" Dr.C.H. Ting, available from FIG, 54 pages,

Dave Taliaferro <> writes:
This is a good book for building your own Forth system. I used this to
port eForth to a DSP. Teaches how to build Forth from assembly macros
and primitives. There are eForth versions for several processors.

Other titles are:
90, Zech, Forth for Professionals, Ellis Horwood, 0-13-327040-8
from Computer Literacy on 408-435-0744. includes a discussion on
threading mechanisms.
87, Dr.Dobb's Toolbook of Forth, Vols I & II, M&T Publishing
86, Reynolds, Advanced Forth, Sigma
86, Terry, Library of Forth Routines and Utilities
85, Olney and Benson, Forth Techniques, Pan Books, 0-330-28961-6
85, Roberts, Forth Applications, ELCOMP Publishing, 3-88963-061-8
84, Feierbach, Forth Tools and Applications, Reston
81, Loeliger, Threaded Interpretive Languages, Byte Books, 0-07-038360-x


Subject: [4] Books - Related

"FORTH -- A Language for Interactive Computing" C.H.Moore and G.C.Leach,

This first paper to use the name "Forth" describes it as it was in 1970.
There are surprising differences from and surprising similarities with
modern Forth systems. Available on-line at:

"The Evolution Of FORTH - An Unusual Language" C.H.Moore, Byte,
Aug. 1980.

Forth's history by its creator.

"The Evolution of Forth" E.D.Rather, D.R.Colburn, C.H.Moore,
ACM SIGPLAN Notices, Volume 28, No.3 March 1993, 46 pages.

An larger and more recent history of Forth by the early pioneers.
This is also available on the Forth Inc. home page at

"OpenBoot Command Reference" part no: 800-6076-11, revision A, March 1993
"Writing FCode Programs" Sun, sold by the Forth Interest Group.
It's $50-$60.

"Stack Computers: The New Wave" Phillip Koopman, John Wiley & Sons, 1989,
ISBN 0-470-21467-8, price $82.

Stephen J. Bevan <> writes:
This isn't a book about Forth, rather it is about computers that
potentially execute Forth very efficiently. The book contains a
detailed overview of a number of Forth chips as well as a potted
history of what seems to be every stack-based computer ever

Paul Frenger, SIGFORTH, 1(3):28-29, 1989 writes:
Overall, I highly recommend this book to anyone who programs in
Forth or any other high level language of whatever variety, or who
is interested in the hardware details of Forth engines or the
pitfalls of conventional CPU design.

Stack Computers is in print from Mountain View Press, see

The author <> reports (July 96):
My stack computer architecture book has recently gone out of print,
but I still receive occasional inquiries as to availability. The
former publisher, Ellis Horwood Ltd., has graciously returned the
copyright ownership to me. So, I have decided to place the book
on-line at

The book contains, among other things, case studies of seven late-80's
stack computers. Perhaps there is renewed relevance with Java (and,
perhaps not -- that question has already been debated at length).
The book is still copyrighted, but is readable in its entirety from
the above URL (see the copyright statement at that URL for details).

I don't have time, and there doesn't seem to be market demand at this
point, for a revised edition. However, if you e-mail me pointers to
web sites that describe newer stack computer information, I will
consider putting them in the on-line supplement as time permits.

"More on Forth Engines" Dr.C.H.Ting, Editor
For a description of each issue see:

"Write Your Own Programming Language Using C++" Norman Smith,
Wordware Publishing, Plano, Texas. 108 pages, DOS disk included,
ISBN 1-55622-264-5, price: $15.

Norman E. Smith <> writes:
This book presents a minimal Forth implementation called Until, for
UNconventional Threaded Interpretive Language. Until is designed
to be used as a macro language embedded in other applications. It
can both call and be called by other C functions.

Chris Jakeman <> writes:
Continued development has enhanced Until since this publication.
For details of the latest public version, see FAQ: system - part 4/6.

"Thinking Postscript" Glenn Reid, out-of-print but now on-line at"

Olivier Lefevre <> writes:
This classic book is not a cookbook but instead goes into
the philosophy of PostScript, which has much in common with Forth.


Subject: [5] Periodicals

Forth Dimensions (ISSN 0884-0822)
Published 6 issues/year to members; Marlin Ouverson, editor
<>. Subscriptions are US$45/year,
plus US$15/year for foreign subscriptions. Forth Interest Group,
100 Dolores St, Suite 183, Carmel, CA 93923 USA,
| 831 373 6784 FAX: 831 373 2845

Brad Rodriguez <> writes:
Forth Dimensions is the official publication of the Forth Interest
Group, and is probably the foremost journal devoted exclusively to the
Forth language. It has been in publication since 1979.

FORML and euroForth Conference Proceedings
Published annually by FIG at $40. FORML is an educational forum for
sharing and discussing new or unproved proposals intended to benefit
Forth. The first conference was held in 1980 and euroForth
conferences began in 1992. FIG (above) publishes an index for these.

Rochester Forth Conference
Published annually by the Institute for Applied Research at $25 to
$35 (depending on year).
The conference covers all topics of Forth implementation and
application. Conferences began in 1981.
See for an index.

Does anyone have information about:
- conferences in Australia, China etc.?

Journal of Forth Application and Research (ISSN 0738-2022)
Published nominally 4 issues/year;
Institute for Applied Forth Research Inc., Box 1261, Annandale,
VA 22003, USA.

Peter Knaggs <> writes:
JFAR is the only peer-reviewed Forth journal. It has been revived
after a long hiatus, see

The Computer Journal
Published 6 issues/year; Dave Baldwin, editor <>.
Subscriptions are US$24/year in U.S., US$34/year Canada/Mexico (air
mail), US$44/year foreign (air mail). The Computer Journal, P.O. Box
3900, Citrus Heights, CA 95611-3900 USA, telephone 916-722-4970, fax
916-722-7480, email, <>.

Brad Rodriguez <> writes:
The Computer Journal is not a Forth magazine; it is devoted to
"classic", small, and non-mainstream computers. It frequently carries
articles about the Forth language.

ACM SIGPlan Notices
The ACM SIGPlan Notices journal has a Forth column which appears
approximately six times a year.
ACM, 1515 Broadway, New York, NY 10036-5701, 212-869-7440
Vol.31 No.4, Apr 96: "Survey of Object Oriented Forths"
Vol.31 No.4, Apr 96: "Toward an Object Oriented Forth"
Vol.31 No.8, Aug 96: "Thoughts on the 1996 Rochester Forth Conference"
Vol.31 No.12, Dec 96: "A Whirlwind Tour of Forth Resources"
Vol.32 No.2, Feb 97: "Introduction to the Beetle Forth Virtual Processor"
Vol.32 No.4, Apr 97: "A Review of Robotics Languages"
Vol.32 No.6, Jun 97: "Forth as a Robotics Language"
Vol.32 No.11, Nov 97: "Venturing Forth with a Flashlight"
Vol.33 No.2, Feb 98: "Observations on the EuroForth 97 Conference"
Vol.33 No.3, Mar 98: "The Growing Machine, a Pre-Forth Language

Some national FIG groups publish their own periodicals, eg
- Forthwrite (ISSN 0265-5195) (6 issues/year) from FIG UK and
- Vierte Dimension (4 issues/year) from Forth-Gesellschaft e.V.

See the FAQ: groups - part 6/6 for details.


Subject: [6] Standards Documents

For details of the Forth standards see the FAQ: general - part 1/6.

Published standards since 1978 are Forth 79 and Forth 83 from the Forth

Standards Team, ANS Forth - document X3.215-1994 - by the X3J14
Technical Committee and the Open Boot Standard.

The most recent standard, ANS Forth, defines a set of core words and
some optional extensions and takes care to allow great freedom in how
these words are implemented. The range of hardware which can support an

ANS Forth Standard System is wider than any previous Forth standard and
probably wider than any programming language standard ever. The
document includes 90 pages of annexes, providing an insight into the
decisions which had to be taken in drafting ANS Forth.

Copies of the standard cost $193 from the American National Standards
Institute Sales Department (212) 642-4900, but the final draft of ANS
Forth is free and available (subject to copyright restrictions) at: (Word For Windows, v2) (Word For Macintosh) (plain ASCII)

ANS Forth was adopted by ISO as an international standard and published
in June 97 as ISO/IEC 15145:1997

The Open Boot Standard defines the use of Forth to configure the
hardware attached to a computer at startup. It is a token-threaded,
open standard closely modelled on ANS Forth used by Sun, IBM, Motorola
and Apple. See also section 6 below:

IEEE Std 1275-1994 is recognised as an American National Standard:
"IEEE Standard for Boot (Initialization Configuration) Firmware:
Core Requirements and Practices, IEE Std 1275-1994, 262p,
ISBN 1-55937-426-8, about $60 from IEEE Computer Society at
The Institute of Electrical and Electronic Engineers Inc.
345 East 47th Street, New York, NY 10017-2394, USA,
voice 1-908-981-1393, fax: 1-908-981-9667, web:,

See also the Sun web-site to find: All manuals from Sun Holds the working group documents.


Subject: [7] On-line Tutorials

Getting Started with Forth --
More a guide to getting started than a Forth tutorial, Dave Pochin
(FIG UK) has published this guide to help you find, install and run
your first Forth.

Step-by-step instructions carry you over the pitfalls and get you
going in the shortest possible time.

The material is also packaged for easy downloading.

Julian Noble's Forth Primer (at
dates from 1992 and he has now updated it (1999) to suit Win32Forth.
The new primer is at


Subject: [8] Other Documents


For details of the F21 chips, see

For the RTX2010 from Harris Semiconductor, see
(Intersil bought the company)

Except some slight differences in the instruction set, this document
is applicable to the RTX2000. The processors are pin-compatible.


Bernd Paysan writes "Anton Ertl wrote a paper,
'RISCs Are Faster Than Stack machines', several years ago - you can
find it on his homepage,
He explains how to write an optimizing Forth compiler that compiles
to code approximately as good as a good C compiler generates on the
same machine. RAFTS is well and alive (although it currently
generates code only for MIPS processors)."


Peter M. Kogge, "An Architectural Trail to Threaded-Code Systems",
IEEE Computer Journal, Mar 1982, pages 22-32 - Explains the design
of (a classical implementation of) Forth, starting with threaded
code, then adding the parameter stack, constants, variables,
control structures, dictionary, outer interpreter and compiler."

SB writes: "A most excellent discussion on all threading varieties
by Brad Rodriquez is at
Be sure to download the Figures showing code layout for each
threading method."

Anton Erlt discusses the threading alternatives in


Subject: [9] Suppliers

Brad Rodriguez <> writes:
Most of these books and conference proceedings are available from the
Forth Interest Group, P.O. Box 2154, Oakland, CA 94621 USA,
| telephone 831 373 6784, fax 831 373 2845
| and
| 1999 prices: Starting Forth $50, Thinking Forth $35, $10 p&p

Other suppliers include:
FORTH Inc. - email to

Miller Microcomputer Services (MMS) - email to

Mountain View Press (MVP) - email to
Box 429, Star Route 2 La Honda, CA 94020, voice: 415-747-0760

and, in the UK,
MicroProcessor Engineering Ltd.(MPE) - email to
| 1999 prices: Starting Forth £31.50, Thinking Forth £22, £2 p&p

Why not call them for list of their Forth publications in print?


| Subject: [10] Libraries
| The only lending library dedicated to Forth is run by FIG UK who have
| almost every English language publication including the Brodie books
| and all recent material.
| Loans are free (you pay postage both ways) but you must become a
| member. Subscriptions (1999) are £12/year. For details including the
| full stock list, see


Subject: [11] Indexes

Currently there is no single on-line index to books or published
papers about Forth.

FIG supplies a printed index of FORML and euroForml papers. and find
45 books but omit some important ones like Scientific Forth.

Peter Knaggs maintains a growing on-line database (nearly 600 references)
to papers from euroFORML, euroForth and Rochester conferences, also
books and standards. Use
to search the database (also available as a BibTeX bibliographic file from Gnu Zip (167K) PK Zip (169K))

Miller Microcomputer Services maintains an on-line bibliography at

J. D. Verne

Jul 4, 2000, 3:00:00 AM7/4/00
Posted-By: auto-faq 3.3 (Perl 5.004)
Archive-name: computer-lang/forth-faq/part6

Posting-Frequency: Monthly. A how-to-find-the-FAQ article is posted weekly.

comp.lang.forth Frequently Asked Questions, part 6 of 6
Forth Groups & Organizations

Bradford J. Rodriguez, 6 Dec 1998

Please send additions, deletions, or changes to Brad Rodriguez,


Subject: Table of Contents

[1] Forth Organizations
[2] FIG Chapters
[3] Forth Conferences

NOTE: this FAQ is in the early stages of construction. Contributions
and suggestions are welcome.


Subject: [1] Forth Organizations

Forth Interest Group (FIG)
100 Dolores St, Suite 183
Carmel CA, 93923 USA
telephone: +1 408-373-6784 (408-37-FORTH)
fax: +1 408-373-2845

Individual membership in FIG is US$45 per year (USA & Canada).
(Canada air mail US$53/year; all other countries US$60 per year).
Benefits include:
* Six issues of Forth Dimensions;
* 10% discount on FIG retail items (books, disks, etc.);
* 10% discount on early FORML registration (prior to November 1);
* Resume referral service for programmers seeking jobs;
* Electronic services:
- Resumes posted on FIG's web page
- Free personal web page on (maximum size 100K)
- Free email forwarding service at
- FIG's vast FTP software library, including the Forth
Scientific Library and much more
- Access to FIG "members only" site and special interest groups
- Discounted domain registration ($25 for members and $50 for
non-members, plus actual Internic registration charges)
* Contact with local Forth programmers through local chapters;
* Support of the annual FORML conference.

Corporate membership in FIG is $125 per year (inquire about foreign
rates). In addition to the above, corporate members receive:
* Five copies of each issue of Forth Dimensions, providing useful
Forth information for the whole Forth programming team;
* Free corporate listing, with a 50-word description, in Forth
Dimensions, to increase corporate visibility in the Forth
community and aid in recruiting Forth programmers;
* 10% discount on advertising rates for advertising products and
services as well as recruiting ads;
* A link from the FIG web site to a designated corporate web site,
for better electronic access.

Library membership in FIG is $125 per year (inquire about foreign
rates). Library members receive:
* Forth Dimensions mailed bimonthly;
* A complete set six Forth Dimensions mailed at the end of year;
* A copy of the year's FORML proceedings.

The UK Chapter of the Forth Interest Group publishes its own
Forthwrite magazine 6 times a year, maintains an extensive lending
library of books and periodicals (including Forth Dimensions, JFAR
and FORML) with a number of items on disk too.

To join (at only 10 pounds a year, you can't afford not to :-)
contact Doug Neale on 0181 542 2747 or by post to:
58 Woodland Way

Web page: <>

Forth-Gesellschaft e.V. (German FIG).
Visit our Web site at <>
for detailed information and electronic back issues of Vierte
Dimension, our quarterly magazine. Once at our Web site, you'll also
find links to FIG UK and FIG US, and you'll find us in turn from
their Web pages.

Dutch Forth Users Group
Boulevard Heuvelink 126
6828 KW Arnhem
Tel: 031(0)26 4431305
BBS: 031(0)26 4422164

Meetings: bimonthly, every second saturday of every even month.
Located at:
Volkssterrenwacht Utrecht
Zonnenburg 2, Utrecht
This place lies in the centre of the old city Utrecht. Meetings
start normally at 10.30 PM. and the day ends about 3 AM.

Publication: the periodical 'Het Vijgeblaadje'
The subscription for foreigners is only fl 20,00 guilders a year to
Postbank: 5253572 don't forget to mention your full address and the
message 'subscribtion Vijgeblaadje' You may also send fl 20,00 in
banknotes to the HCC-forth-gg located at Arnhem see above for the
complete address.

Products from our group are:
CHForth an 16-bit multisegment ANSI Forth for the PC/AT
with anual.
8051-ANS-Forth a subroutine treathed 16-bit ROM Forth
available for 80(C)52, 80C535, 80C552 and DA87C520 with
manual, EPROM and server.
ANS-Forth software course and a hardware course with
16-bit in and 16-bit output etc.
HCC-Forth-gg members get a 10% off retail items from our group.
Note that a subscription to 'Het Vijgeblaadje' is not enough.
Send a mail for more info about the official membership.

Institute for Applied Forth Research *** NEW ADDRESS ***
Box 1261
Annandale, VA 22003
Tel : +1 (716) 235-0168
Fax : +1 (716) 235-0168
Holds the annual Rochester Forth Conference (see below), and
publishes the peer-reviewed Journal of Forth Application and
Research. The Journal is published electronically on the web at
Editor, Dr. Peter J. Knaggs <>;
Publisher, Larry Forsley <>.

Association for Computing Machinery (SIGForth)
ACM's Special Interest Group on Forth has been absorbed into ACM
SIGPlan, the Special Interest Group on Programming Languages.


Subject: [2] FIG Chapters

[This section is under revision. If you have information about an
active FIG chapter, please send it to]

North Bay Chapter
Current contact and meeting schedule unknown.

Maryland Chapter
Current contact and meeting schedule unknown.

Southern Ontario Chapter
Meets quarterly at Ryerson University, Toronto, Ontario.
For current information contact Ken McCracken <>.

see "FIG-UK" listing under "[1] Forth Organizations"

see "Forth-Gesellschaft e.V." listing under "[1] Forth Organizations"

see "Dutch Forth Users Group" listing under "[1] Forth Organizations"


Subject: [3] Forth Conferences

Rochester Forth Conference
The Rochester Forth Conference is held in (or near) the Eastern U.S.
every June. Direct inquiries to Larry Forsley,,
or visit the web site at
[The status of the 1999 Rochester Forth Conference is uncertain.
Check the web page for the latest information. -bjr]

EuroForth Conference
The EuroForth Conference is the only refereed Forth conference.
It is usually held in late October or early November of each year.
The location is rotated among European countries on a three year
cycle (England, Germany, guest). The 1999 conference is tentatively
scheduled to be held in St. Petersburg, Russia. Check the EuroForth
web page for the latest information:

FORML Conference
The FORML Conference is held at the Asilomar Conference Center in
California every November. For current information, visit the FIG
web page <>, or email <>.

Other Forth conferences have been held in Australia and China.

J. D. Verne

Jul 4, 2000, 3:00:00 AM7/4/00
Posted-By: auto-faq 3.3 (Perl 5.004)
Archive-name: computer-lang/forth-faq/part4

Posting-Frequency: Monthly. A how-to-find-the-FAQ article is posted weekly.

comp.lang.forth Frequently-Asked Questions, part 4 of 7
A discussion of available Forth Systems: Commercial,
Shareware & Freeware
John D. Verne <>
Last modified: $Date: 1999/07/23 02:26:49 $

Please send omissions or corrections to John D. Verne
<>. The Forth Systems FAQ, Copyright (C) 1996 by
John D. Verne. All Rights Reserved. For all the gory legal stuff,
please see the ``Legalities...'' section. This FAQ is adopted in its
entirety from the "implementations" FAQ by Stephen J. Bevan, last
updated September 1995. Thanks Stephen!

Table of Contents

1. Introduction

1.1 What this document is
1.2 What this document is not
1.3 How to get the files listed herein
1.4 Why are some listings so terse?
1.5 Requesting Changes to the FAQ
1.6 About the Systems FAQ

2. Recent Changes

2.1 Change Log
2.2 To Do

3. Forth for Embedded Systems

3.1 8051/31
3.2 CP/M, Z80
3.3 Hitachi
3.4 DSP (Digital Signal Processors)
3.5 MCS51 (AMTEL)
3.6 Motorola (68K, 6809, 68HC11/16)
3.6.1 68HC11/16
3.6.2 68000
3.6.3 6809
3.7 Microchip PIC

4. Forth for Stack Machines and Forth Chips

5. Forth for the PC

5.1 16-bit real-mode
5.2 32-bit protected-mode

6. Forth for Microsoft Windows

7. Forth for the Apple Macintosh

8. Forth for OS/2

9. Forth for the Acorn ARM/StrongARM

10. Forth written in C/C++

11. Forth for Various Flavors of UNIX

12. Forth for the Amiga

13. Forth for the Atari ST

14. Forth for the Transputer

15. Forth for the Tandy TRS-80

16. Forth for the Apple II

17. Forth for VAX/VMS

18. Miscellaneous Forth

18.1 Musical Forth
18.2 Java Forth
18.3 USR/3COM Pilot/Palm Pilot/Palm

19. Forth that ain't necessarily Forth

20. Contributors and Acknowledgments

21. Legalities, Miscellanea and Caveats


1. Introduction

1.1. What this document is

This is part four of a seven part document covering many aspects of

the Forth programming language. All seven parts are posted monthly to
the USENET newsgroups comp.lang.forth, comp.answers, and news.answers.
They are updated regularly.

This part is primarily concerned with the Forth implementations
available for a wide variety of systems. That is, it attempts to
answer the question, "Where can I get Forth for ... ?" For further
information on Forth or Forth resources, please consult the other

parts of this FAQ. They can be found at:

o <>

o <>

1.2. What this document is not

This document is not a complete list of all the available Forth
implementations, and it never will be. Neither will it ever be the
most accurate or up-to-date source for contacts and Forth resources.
I fully expect to have missed many legacy systems, and I know that
there are current Forth vendors and authors who have not made it into
these pages.

What I have attempted to do is maintain this document as a good
starting point for those who are interested in finding a Forth
solution for a given system.

Just as a single keyword search on the internet may not give you the
exact results you want, perhaps there are enough "hits" in these pages
to guide most people to their eventual destination.

1.3. How to get the files listed herein

Some of these Forth systems are listed as being available from
particular anonymous ftp addresses, or from "good archives". If you
have a choice of sites, please try and use as geographically close a
site to you as possible. Most ftp directories have README or 00INDEX
files that tell you what's in them. Read these first.

1.4. Why are some listings so terse?

Forth is probably one of the most ported languages. The number of
implementations I have been able to note in these pages is nothing
short of staggering. In some cases I've been forced to be a little,
um, terse, to say the least. If this document is going to be accepted
by most news servers, it has to be kept below a critical size; it may
already be over that limit for some sites.

If a listing is short, it is probably because that product is
available for more than one machine. If you can't find the Forth
system you are looking for in this document, please remember that most
of the vendors mentioned herein can source for a wide variety of
platforms. Company addresses and contact information are in part 3 of
the FAQ, vendors <>.

1.5. Requesting Changes to the FAQ

There are probably several errors and/or omissions in this document.
If you spot an error, or feel that there is an obvious omission,
please let me know <>. If possible, please send
one (1) email per change request.

Please indicate in the email subject line that this is a change
request for the Forth Systems FAQ, and be sure to include the exact
text to revise. It is especially helpful if you can provide an
example of the new or fixed listing.

Please note that listings marked with a "?" are known to be wrong, and
need to be corrected or removed. As well, I've also marked some
listings with comments [like this] when I am unsure of the accuracy of
the information it contains.

1.6. About the Systems FAQ

The source text of this document is in SGML format, and is maintained
with emacs, utilizing the SGML major-mode. Historical versions are
stored as a GNU RCS archive.

The text and HTML versions are created with the SGMLTools package,
using the LinuxDoc96 DTD. The same tool is used to verify the SGML

The HTML 3.2 conversion is tested with Netscape Communicator 4.61 and
Lynx. If you require this document in formats other than plaintext or
HTML, please email me.

2. Recent Changes

2.1. Change Log

Please note that recent changes to product listings are marked with a
vertical bar ("|").

o 99-07-22 Added RTC678 PIC Forth

o 99-07-11 Updated ARM eForth, ARM in general, eForth in general,
added kForth, played with heading names

o 99-07-10 Added iTV 4os, Silicon Composers, P21Forth &etc. to
engines section

o 99-07-09 Added a skeleton Forth Engine section. Need to populate
this at some point.

o 99-07-07 More tweaks, no real content change. Folded some sections
into subsections.

o 99-07-05 Added TpForth listing. Tested 8051 and PC URLs.

o 99-07-03 Converted to SGML; original text source has been branched
in the archive. This document will supercede it.

o 99-06-30 Tweaks hacks and fixes. Massaged LegoForth listing to be

o 99-05-05 Update hForth for ARM, transputer, Jax4th, FIJI, Holon,
Aztec, ForthCMP, Delta

o 98-10-07 Added refs to Hartforth, ChForth, 8051-forth, byteforth

o 98-09-12 Fixed A. Houghton email, typos, Quartus listing

o 98-08-24 Added entry for Quartus beta

o 98-08-19 Added listings for chipFORTH from COMSOL

o 98-08-13 Added TDS to the Misc/Hitachi list.

o 98-08-12 Updated (some) changed URLs

o 98-08-12 Updates to FORTH, Inc., MPE, jForth is now freeware

o 98-06-02 Updated PFE info, added pForth listing

2.2. To Do

Maintaining and organizing the comp.lang.forth FAQ is a large job, and
can eat a big chunk of my time. I've prioritized some Things To Do to
let the reader know what I'm up to:

1. Verify most, if not all, URLs

2. Organize (and standardize) the internal references, and references
to the other FAQ-files; integration with HTML versions

3. Create links for all commercial products to vendors' sites

4. Update commercial blurbs with latest info

5. Use the SGML source smarter -- I may or may not continue using the
idiosyncratic LinuxDoc DTD

If you want to help, or have any suggestions, please let me know

3. Forth for Embedded Systems

Forth is probably the most chip-friendly language there is. I won't
pretend that I've mentioned even half of the supported chip families.
Please note that many of the vendors in this section can source for a
huge variety of chips and chip families.

3.1. 8051/31


o 8051-ANS-Forth v1.01, by F.C. Cornelis and W. Ouwerkerk
<> is a 16-bit ANSI standard
implementation for the MCS51 line of processors. Currently
available for 80C32, 80C320, 80C520, 80C552, 80C535 and runs
also on Intel's new line of 87C251 processors. Turnkey programs
are free of royalties and can be located in RAM. After
relocating it may be burned into the 8 Kb free gap in EPROM next
to the Forth system. Features include LOCALS, assembler, many
libraries and a printed English-language manual. Version 1.11
will be released in November 1998. [Status? --jdv]

o AM Research offer amrFORTH; a cross-development system for the
8051, 80C16x and 68HC11 that features a kernel of less than 700
bytes. 16-bit DOS or 32-bit Windows 95/98/NT development
systems are available. A shareware version of amr8051 Forth
<> is available for

o Computer Solutions <>
(COMSOL) produce and sell chipFORTH for many chip families,
including the 8031, 83C552, 8051, 80186 and 80196. Features and
development procedures depend on the chip supported, but
chipFORTH provides a target compiler and assembler, debugging
tools and code to communicate with the host. The FORTH nucleus
is a 16-bit signed integer implementation with FORTH-83

o SwiftX <>
from FORTH, Inc. <> is an interactive cross-
development tool for embedded systems. A Windows-based system
that features a multitasking kernel, debugging tools,
dis/assembler and source libraries. Supported chips include the
8051, 68332, 68HC11/12 and UT69R000.

o Laboratory Microsystems, Inc.
<> (LMI) offer
the LMI FORTH metacompiler that cross-compiles to many chip
families, including the 8051/31. Compiles to ROMable code, or a
turnkey disk application. Produces headerless words for compact
code. There is no license fee or royalties for compiled

o Mikrap and Forth-Systeme sell SwissForth and act as agents for
Laboratory Microsystems, Inc. (LMI).

o MicroProcessor Engineering, Ltd. (MPE) offer their Forth5 Cross
Compiler for the 8031 which contains expanded ROM/RAM and single
chip targets. Variants for the 8055x also available.

o Offete Enterprises, Inc. 8051 eForth
<> by C. H. Ting. A
small ROM based Forth system, with source code in MASM, for


o William H. Payne, the author of "Embedded Controller Forth for
the 8051 Family", has made all the code
for the system described in his book available. It is also
available with purchase of the book from FIG.

o ?eForth51
may be downloaded free of charge from the RealTime Control and
Forth Board (RCFB) <>. Designed
to be very portable. [JDV:960920]

o 51forth <>
(alternative site
is a subroutine-threaded Forth by Scott Gehmlich. [APH:950807]

o CamelForth/51
by Brad Rodriguez is an ANSI Standard Forth that is free for
non-commercial work (negotiate with the author if you want to
use it in a commercial product). This is a beta-test version.

o TpForth 2.6 <> by Technopoint
Inc. <> is an integrated software
development and debugging environment for the production of
embedded Forth software. Two components make up the system:
TpForth Developer Studio and TpForth Real Engine. The former is
an application designed for Microsoft Windows for writing multi-
threaded Forth programs and their interactive symbolic debug in
real time. The latter is a multitasking engine that allows the
real time execution and debug of Forth programs on the target
hardware architecture (in other words, a multitasking stack
based machine that has been implemented on supported hardware
architectures). Supported target architectures are currently
8051, 8086 (16- and 32-bit) and the MIPS family.

3.2. CP/M, Z80


o Laboratory Microsystems, Inc. (LMI) offer a version of their
Forth-83 cross-compiler for the Z80 and the HD64180. [see the
``8051'' section]

o |eForth <> has been
ported to the Z80 by Ken Chen. Includes a diagnostic program to
debug the system during cold boot.


o CamelForth/80
by Brad Rodriguez is an ANSI Standard Forth that is free for
non-commercial work (please negotiate with the author if you
want to use it commercially). [SJB:950721]

o eForth
has been ported to the Z-80.

3.3. Hitachi


o MicroProcessor Engineering, Ltd.
<> (MPE) Forth 6 compiler for the
H8/300H is a Windows-hosted system with a choice of umbilical or
standalone targets. Comes with source code. No runtime

o chipFORTH from FORTH, Inc is available for the H8. [see the
``8051'' section]

o Triangle Digital Services Ltd.
<> (TDS) have
two varieties of Forth burned into the PROMs of their Hitachi-
based microcontroller systems. Two versions are available:
16-bit ANS Forth on an H8/532, and FIG-Forth on the 8-bit
HD6301. Manuals and utilities are provided.

o |eForth <> has been
ported to the H8/532 by Bernie Mentink.


o pbFORTH (Programmable Brick FORTH)
<> is an
embedded almost-ANS Forth for H8/300 and LEGO Mindstorms based
on hFORTH by Dr. Koh [see the ``PC Forth'' section]. Plenty of
tools, utilities and examples are included. Source code
available for download.

3.4. DSP (Digital Signal Processors)


o Computer Solutions (COMSOL) <> offer a 32-bit FORTH for the T800. All 64-bit
floating point instruction are supported on the T805. Features
include a speedy optimized compiler, generation of ROMable code,
dis/assembler and debugger. Multi-tasking kernel.

o ?TCOM FORTH Target Compiler by Tom Zimmer and Andrew McKewen has
been extended for the TMS320. It also supports 808X, 80196 and
SuperZ8. [is this still accurate information? --jdv]

o FORTH, Inc <> offers chipFORTH
<> for the
TMS320C31, an interactive, DOS-based, cross-development
environment for embedded systems. Support for Intel, Motorola
and Hitachi microcontrollers.

o Micro-K Systems produce complete AT&T DSP32 boards running
Forth. Includes the AT&T DSP library.

o MicroProcessor Engineering, Ltd. (MPE) Forth5 Cross Compiler,
for various TMS320C3x family DSP chips.


o A port of eForth
is available for the 56002 DSP. [JDV:970412]

o Dwight Elvey has made available a Forth cross-compiler
<> for
the 21xx family of DSP chips that runs under Tom Zimmer's TCOM.
It was originally designed for the 2181, but should be easily
adapted to other 21xx parts (e.g., the 2115). The use of special
218x/7x instructions was avoided.

3.5. MCS51 (AMTEL)


o ByteForth is a near ANSI Forth implementation for the MCS51 line
of processors. Currently only the AT89C1051 and AT89C2051 are
supported. ByteForth is an optimizing macro compiler,
generating royalty-free standalone applications. The compiler
lets the user free to adjust the RAM and ROM for optimal use and
has a built in Flash programmer. The system runs under
8051-ANS-Forth v1.01 [see the ``8051'' section] an a B+ SBC with
80C535. Features built-in hardware support, decompiler, 8051
assembler, DOS server, printed (Dutch-language) manual and two
AT89C2051-12PC processors, cables and Flash programmer. Please
contact W. Ouwerkerk <> for

3.6. Motorola (68K, 6809, 68HC11/16)

3.6.1. 68HC11/16


o AM Research offer a version of amrForth for the 68HC11. [see the
``8051'' section]

o COMSOL offers chipFORTH for the 68HC11/16. [see the ``8051''

o Holon 11 <> by Forth
Engineering is an integrated cross- development tool, which lets
you work interactively on the program in the target system. The
200 byte remote monitor is boot-loaded into the 68HC11. Holon
11 offers all benefits of HolonForth [see the ``PC Forth''
section]. A free fully functional test version is available.

o SwiftX from FORTH, Inc. <>. [see the
``8051'' section]

o MicroProcessor Engineering, Ltd. (MPE) has a version of their
Forth5 Cross Compiler for the PC, which includes a resident
Forth for the 68HC16. This is a 16-bit Harvard model (64K code
& 64K data). The MPE Forth includes "long address" fetch and
store operators for the full megabyte of 68HC16 memory.
Multiple data pages are also supported if your hardware will do

o Laboratory Microsystems, Inc. (LMI) offer an 83-Standard
metacompiler for the 68HC11. [see the ``8051'' section]

o New Micros, Inc. <> has Max-FORTH which
is burned into the ROMs of their OEM 68HCxx development boards.
Max-FORTH uses a serial port to talk to the outside world, and
can be compiled to off-chip ram. [BL:931117]

o |An eForth <> port is
available for the 68HC11.


o ?tiny4th <> by Karl Lunt
is free for all non-commercial use. [JDV:960918]

o eForth
is a highly portable, ANS-aligned Forth with source.

o Various at <> &

3.6.2. 68000


o Bradley Forthware's ForthMon is available for US$500.

o COMSOL offer chipFORTH for the 68332, 680x0. [see the ``8051''

o SwiftX from FORTH, Inc. <> [see the ``8051''

o MicroProcessor Engineering, Ltd. (MPE): Forth5 Cross Compiler, a
32-bit cross-development system for the PC. A protected-mode
version is available.

o Laboratory Microsystems, Inc. (LMI) offer a 16- or 32-bit 680x0
Forth-83 system. [see the ``8051'' section]

o |eForth <> has been
ported to the 68000 by Richard Haskell, specifically for the
Motorola ECB board.


o There is a version of Laxen and Perry's F83 which will meta-
compile 68000 code on a PC that can be burned to ROM, or used
with S records any way you like. It is available on GEnie as
M16PC.ARC. [MC:93]

o ?bot-Forth
<>: The
source code is comprised of 3 parts: the metacompiler, mini-
assembler, and the kernel. The kernel will meta-compile itself.
The metacompiler was presented at the 1989 Rochester Forth
Conference. [SJB:93]

o F68KANS & F68K, Joerg Plewe. [see the ``8051'' section]

o eForth has been parted to the VME 68K. A subroutine threaded
implementation of ECBE4TH 32-bit eForth, derived from Haskell's,
is available on GEnie as MVME167.ZIP.

o TILEforth by Mikael Patel. [see the ``C-Forth'' section]

o Various at

3.6.3. 6809


o CamelForth/09
by Brad Rodriguez. Consult the author for commercial use.

3.7. Microchip PIC


o |IRTC678 for the PIC <> is
available from RAM Technology Systems. IRTC678 for the PIC
produces optimized machine code. The 'words' are subroutines
that use the 8 deep stack of the PIC and the compiler keeps
track of the stack use to warn of wrap over. The PIC is
programmed incrementally by the ICEPIC module that connects to
the host PC parallel port and your project hardware.

o F2P v1.0
is a compiler that reads Forth source for the PIC16Cxx family of
microcontrollers and generates a file ready to be assembled by
Microchip's MPASM. You will need MPASM or MPLAB to be able to
generate executable code. This is freely available from the
Microchip web site <>. Incremental
updates <> may be
available. [JDV:970815]

o |eForth <> has been
ported to the PIC17C42.


o There is an implementation for the PIC of unknown pedigree here:

4. Forth for Stack Machines and Forth Chips

[Under construction. Suggestions welcome. --jdv]


o |The iTV Corporation <http://www/> has developed
4os, a real-time OS that utilizes the i21 Forth microprocessor.
4os is a complete networked information appliance operating
system. The entire system (OS, live Forth system, network, file
system, graphic decoders &etc.) requires less than 512Kb of
program memory.

o |Silicon Composers, Inc. <>
offer several high-end single board computers and parallel
coprocessor systems based on the Harris RTX 2000 and SC32 stack
machines. SC/Forth for the Harris-based systems is a
multitasking Forth-83 standard implementation with IEEE
floating-point and utility libraries available.

o |P21Forth <> from
Offete Enterprises, Inc. is an ANS implementation designed for
the MuP21 (and MuP21h). Includes drivers for bit manipulation,
I/O, graphics and multitasking. Discrete P21 chips and
evaluation kits are also available.

o |Offete Enterprises, Inc.
<> offer the Indelko
RTX2000 kit with the cmForth source code for US$150.


o |S21 <> is a freely
available simulator for the MuP21 Forth machine. It comes with
an online manual, source code and a target image of P21Forth.

5. Forth for the PC

5.1. 16-bit real-mode


o CHForth is a 16-bit ANSI standard implementation for the Intel
80x86 and above processors under DOS. CHForth runs in real mode
using multiple segments. By using more segments much larger
programs can be written than under F83. CHForth makes it easy
to generate turnkey programs (with or without headers). Royalty
free. Features online help, command-line editor, Locals,
interrupt support and many libraries. Please contact W.
Ouwerkerk <> for details.

o polyFORTH <>
from FORTH, Inc. <> is a fully integrated,
interactive programming environment designed for real-time
applications on 32-bit DOS-based PCs. Includes an assembler,
editor, programming aids and utilities. polyFORTH hosts a
cross-development system for single-chip microcontrollers. [See
the ``8051'' section]

o Harvard Softworks HS/FORTH makes full use of extended memory,
and comes with optimizer, sound, graphics, and 80x87 libraries.
Has an odd, but efficient, use of memory and dictionary
structure. [JDV:950919]

o Holon 86 <> by Forth
Engineering is an interactive cross-development tool for x86
processors in real mode under DOS. Holon 86 offers all benefits
of HolonForth: browser user interface, structured presentation
of the source code, hypertext and direct access to every program
word, automatic code substitution, automatic code stripping,
single step debugging of Forth and assembler code. A free test
version is available.

o MicroMotion MasterFORTH is available for the PC.

o Miller Microcomputer Services (MMS) offer MMSFORTH V2.5 for
systems with and without DOS.

o Laboratory Microsystems, Inc. (LMI) offer UR/FORTH
<>, in 16-
and 32-bit implementations. They provide libraries for
telecommunications, 80x87 support, custom characters, target
compiler, and more. Based on the Forth-83 standard.

o MP7: TURBO-Forth. Four versions optimized for specific CPU's.
Also: FASTGRAF; an I/O and graphics package for TURBO-Forth.


o AstroForth
<>, I. R.
Agumirsian. An 83-Standard Russian Forth with windows,
assembler, and a screen editor. This is a demonstration system

o eForth
is a very portable, ANS-aligned, public-domain Forth that comes
with all sources and only 29 words in assembler.

o ForthCMP 2.3S <> by
Tom Almy is a fast native code compiler for DOS and embedded
80x86 applications. Both ANS and 84-Standard versions
available. Printed documentation supplied with registration.

o Golden Porcupine Forth, v92.5 by Alexandr Larionov. Distributed
as FREEWARE, with Russian docs, for non-commercial work.
Includes various useful libraries for graphics, sound &etc.
Follows the Forth-83 Standard. Phone: 7 095 288-2660. [VPF:93]

o Pygmy Forth v1.5 <> is a
small, 16-bit DOS Forth written by Frank Sergeant that is
modeled after Chuck Moore's cmFORTH for NOVIX. It is shareware
but there is no charge for registration. If you DO choose to
register, there is a Bonus Disk with goodies for $20. Complete
with documented source code, editor, multitasker, I/O, assembler
and metacompiler. Can be embedded in a C wrapper to access C
library routines. Pygmy Forth is free to download

mvp.exe>, a Forth-79 from Mountain View Press Inc. (MVP), is
freely available for different platforms. MVP also offer other
commercial Forth systems, information, and books.

o ?TCOM v2.5 <>
by Tom Zimmer is a 16-bit cross/metacompiler for DOS.

o ? F-PC v3.6 <> is a 16-bit
Forth that is based on the Forth-83 Standard, but includes
numerous extensions. Very complete implementation, with lots of
examples, and a huge library of code for graphics, I/O, math,
&etc. Available for public download

o hForth v0.9.c
by Wonyong Koh is an ANS-Forth inspired by eForth. This free
beta release is ANS-compliant, and all commented MASM source
code is included. There are three hForth models to choose from:
A standard EXE (for segmented memory machines), RAM (for any
other RAM-only system), and ROM (for small embedded systems).
Designed to be easily ported to any CPU (Z-80 & ARM versions are
also available). [SJB:950720]

o wpforth v1.0
<> by Albert
Chan is a prototype of a typographical programming system built
around WordPerfect v5.x and Pygmy Forth v1.4. [SJB:950722]

o ZENForth v1.18a
<> by Martin
Tracy is a ROMable small-model ANS-Forth. The beta version is
bundled with J. Woehr's book, "Forth: The New Model" (ISBN:

o ?4tH v3.2e <> is
a fast, portable and stable compiler that is very easy to embed
into C applications. It is ANS-Forth and 79-Standard
compatible, and includes such constructs as assertions,
exception handling, and decompilers. Generates portable byte
code. Confirmed ports to DOS, Windows, Linux, BSD-UNIX, DPX/2,
DPX/20, RS/6000, and Coherent, with others in the works. Comes
with lots of documentation and sample applications. 4tH was
discussed in Forth Dimensions (Sep/Oct 1996). Available for

o Various at <> &

These should be available on any SIMTEL mirror

o bbl_[ab].zip: Fast 16/32-bit Forth based on F83; needs work

o MiniForth system v2.5, with A86 [a public-domain
assembler] source

o Sampler of floating point Forth compiler

o Original Fig-86 Forth compiler [SJB:931030]

5.2. 32-bit protected-mode

Please note that the ``16-bit real-mode'' listings may also contain
references to 32-bit implementations.

o Bradley Forthware sells Forthmacs for $250. Price includes
source and DOS extender.

o polyFORTH from FORTH, Inc. <>. [see the
``PC Forth'' section]

o HS/FORTH, by Harvard Softworks, provides access to a full, flat
4Gb of memory. [JVN:93]

o iForth <> is an ANS-
compliant system by Marcel Hendrix <>
available for DOS (with the GO32 extender), WinNT, or Linux.
iForth is optimized for speed. It is subroutinethreaded, and
uses a combination of macro expansion, special-casing, and
peephole optimizing. iForth also contains many words to
interface to the PC hardware; either directly under MS-DOS, or
through libraries in the Linux iServer. A very large number of
Examples are available, including: graphics, floating-point
utilities, language compilers and interpreters, code to work
with .WAV files, and routines to access Novell Net hardware.
Comes with a 220 page manual and an online help facility (ASCII
or HTML). iForth costs Dfl 200 (US$130), but a free copy is
available for those planning to use it for projects in any way
beneficial to the Forth community at large, or those using the
MMURTL OS. [JDV:960911]

o Laboratory Microsystems, Inc. (LMI) sell a 32-bit protected-mode
UR/FORTH based on the 'Phar Lap' DOS extender. [see the ``PC
Forth'' section]

o MicroProcessor Engineering, Ltd. (MPE) ProForth for DOS
<>, v2.2 is a powerful,
comprehensive Forth system for 386+ DOS PCs. Uses a royalty-
free DOS extender to provide a full 32-bit Forth running in
protected mode. Features full DOS file and shell support,
VGA/EGA graphics, direct screen writes, support for IEEE
floating-point math, a macro assembler and a Forth decompiler.

o Offete Enterprises Inc. has a protected-mode 32-bit eForth
<> that comes with
source code and a public-domain DOS extender.

o bigFORTH by Bernd Paysan [see the ``Atari'' section ].


o Common Forth v1.668 <> is an
experimental 32-bit Forth system that features floating point
support, C interface, disassembler/assembler, graphics support
and a metacompiler. Full source code included.

o eForth
is available as a 32-bit port by Andy Valencia.

o FORTH32 is a flat 32-bit subroutine-threaded Forth for DOS-DPMI.
[see the ``OS/2'' section]

o MB&WW Forth386 V1.0 is a Forth interpreter conforming to the
ANSI draft standard X3.215, for 80386+ processors running MS-DOS
V3.3 or later. The dictionary is kept separate from the
compiled code, allowing a header- less copy of the interpreter
to be saved as a new executable file. Utility definitions are
provided which take advantage of this to produce compact and
secure applications. Supports file-oriented or block I/O.
String handling has been made an integral part of the design.
Please email J. Bruce <mailto://> for details.

o FROTH <>
is a free 32-bit Forth system, with source code.

o Gforth v0.1b works under DOS (with the GO32 DOS extender). [see
the ``C-Forth'' section]

o OOF <> is an
object-oriented 32-bit Forth System written by Zsoter Andras. It
does not use a threaded paradigm, and generates native machine
code. Although many ANS Forth programs will run on OOF, it is
not fully ANS Forth compliant. All source is under the GNU
General Public License. [SJB:940722]

o Ale Forth <> by
Johns Lutz Sammer. Implements ANS Basis 17 wordset along with
lots of extensions. Supports subroutine threading, native code
generation and inline words. [SJB:940722]

o |KernelForth <> is a development
system for writing Win32 device drivers. It is targeted for use
in a lab environment. Source code available. Registration is
required, but free.

6. Forth for Microsoft Windows


o Bradley Forthware Forthmacs is available for Windows 3.1 and
costs $250. It includes an EMACS editor and comes complete with

o iForth for Windows NT 4.0/Linux comes with a C-server that
handles all I/O and other operating system-specific tasks. This
version supports pipes, dynamic linking, Tcl/Tk, X-windows, SVGA
graphics, Voxware, MIDI, and control of virtual console screens.
[see the ``32-bit PC Forth'' section]

o LMI WinForth v1.01
<> is a 16-bit
Forth for Windows 3.1/NT 3.1 available from their BBS, or via
ftp <>, for a
US$100 registration fee. Comes with a native-code compiler and
debugger. Supports 80x87 floating-point, SDK Help and overlays.
The kernel can be re-compiled. Based on the Forth- 83 standard.
A 32-bit version is under development.

o MicroProcessor Engineering, Ltd. (MPE) ProForth for Windows
<> v2.1 is a 32-Forth
environment designed to run under Windows 3.11/95/98/NT.
Features include simple access to the 32-bit Windows API and
DLLs, debugger, (dis)assembler, fast compilation, on-line help
and interfaces for file system support, floating-point and
serial communications. Supports the ANS Forth standard.
Windows 3.11 requires WIN32s (supplied).

o SwiftForth
<> from
FORTH, Inc. <> is an extremely fast Forth
system fully integrated with Windows 95/98/NT. It is capable of
as much real-time performance as these environments can support.
Fully compliant with the ANS Standard. 32-bit subroutine
threaded implementation.


o Aztec Forth <> is a
minimum system for IBM compatible computers under Win95. Aztec
Forth generates native Intel code, with inlining available to
modify the amount of subroutines based on the size of the
current word. Windows API calls are normal Forth words and DLLs
are wordlists, although WORDS will not list the contents of a
DLL. All addresses are treated the same so there is no need to
translate from "Forth" to "Windows" addresses. A Windows block
editor with cut & paste and shadow block support is included
with the download <>.

o GForth is available as a DOS/GO32 or native Win32 application.
No Windows programming support yet. [see the ``C-Forth''

o Jax4th v1.25 <>; a
freeware 32-bit Forth for Windows NT complete with source code.
The current version features complete access to NT DLLs, and a
BLOCK loading facility. Written in MASM by Jack Woehr.

o Laboratory Microsystems, Inc. (LMI) WinForth. An "explorer"
version is available. [see the ``commercial section'', above]

o ?Pocket Forth <> v0.1 for
Windows CE is a work in progress. There are MIPS and SH3
binaries available. [Address no longer valid; any ideas?

o Win32forth
v3.5 by Tom Zimmer and Andrew McKewan is a relatively complete
implementation of a Forth IDE for 32-bit Windows. It comes with
some online documentation and examples, but is meant for those
who are already familiar with Windows programming. The kernel
can be recompiled from the C++ source. [JDV:980420]

o 4tH v3.2e has been ported successfully to Windows. [see the
``PC Forth'' section]

7. Forth for the Apple Macintosh


o Bradley Forthware Forthmacs is available for US$50.

o Power MacForth
<> from FORTH,
Inc. <> (based on MacForth originally
developed by Creative Solutions, Inc.) is a highly optimized
native Power Mac system that features high-speed execution,
internal multi- tasking and a RISC assembler providing direct
access to the native CPU architecture. Features include
complete Power Mac Toolbox support, multitasking support,
integrated editor, Quickdraw graphics libraries and extensive
documentation. Fully ANS compliant.

o Micromotion offer a version of their MasterForth for the Mac.


o Yerk <> is
an object-oriented language based on Forth for the Macintosh and
was originally a product marketed as Neon (reviewed in Dr.
Dobb's Journal #108, 1985). Yerk runs on all Macs with at least
System 6.0 but requires System 7.0 (or greater) for full
compatibility. Manual available

o Mops v2.7 <>, by Michael
Hore, is a free object oriented Forth
<> also
derived from Neon. There is a PPC native version in the works.
[info? --jdv]

o Pocket Forth v6.5
<>, by
Chris Heilman. Subroutine threaded with 16-bit words. Supports
16-bit relative, 32-bit absolute addressing. Allows "inline"
definitions, but doesn't have an inline assembler. Minimal
Toolbox support; but it does supports Apple Events. Comes as a
17K application, and a desk accessory. The Distribution
<> comes
with complete Source; the kernel is in assembly. There is an
MPW version available.

o MacQForth
<> is an
adaptation of (Apple II) QForth to the Macintosh. Created with
Mops [see above] and accompanied by the Mops sources. An
attractive introductory package, including some witty and
instructive material proselytizing on behalf of Forth.

o ThisForth v1.0.0.d is an ANS-compliant C-Forth written by Will
Baden, originally for the Sun, now maintained on a Macintosh.
Designed with portability and ease of extension in mind. The
Mac incarnation has few Mac features; it does have drag & drop,
and double-clicking on a source file will load and execute it.
[see the ``C-Forth'' section]

8. Forth for OS/2


o Forth/2 by Michael A. Warot and Brian Mathewson can be licensed
for commercial work. Talk to Brian if you have something to add
or you have any suggestions regarding Forth/2. Contact Michael
if you want to obtain a commercial license and/or source code.
Free for non-commercial work.


o Forth/2 <ftp://ftp-> by Michael A.
Warot and Brian Mathewson is available by ftp for non-commercial
work. [see above]

o FORTH32 <> is a
flat 32-bit subroutine-threaded Forth for DOS- DPMI, and text-
mode OS/2. It is ANS-Compliant and contains the full ANS
wordset implementation, including all the extension wordsets
except LOCALS. The DOS version has a built-in editor for code
VIEWing, and the OS/2 version has hooks precompiled in it to
link to GNU EMACS for VIEWing. The OS/2 version is also fully
multi-threaded and supports all the DOS, VIO, and MOUSE system
calls from high-level code. [JDV:970708]

o Gforth works under OS/2 (with EMX). No OS/2-specific
programming support. [see the ``C-Forth'' section]

o The Portable Forth Environment
(PFE) will run on most PC's under OS/2. [see the ``C-Forth''

o There are two implementations of unknown pedigree at

9. Forth for the Acorn ARM/StrongARM


o RiscForth by Bill Larkin, available from Silicon Vision. A
subroutine threaded Forth-83 implementation with with the nose
of the stack in a register and nice, tight coupling to the
underlying OS. A mean and fast commercial product.


o |Forthmacs v3.1
<> is Hanno
Schwalm's port of Mitch Bradley's Forthmacs for RISC/OS (Acorn)
computers using the ARM2, ARM3, ARM6, ARM7 or StrongARM CPUs.
Complete with debugger, assembler, decompiler/disassembler, and
floating-point math. Follows the 83-Standard, and was written
with portability to other platforms and former versions in mind.
It runs almost any software that has been written for Forthmacs.
Free for evaluation, or 100 d-marks for the fully supported
version. Some documentation and tutorials
<> are available online.

o ARMForth by Rob Turner <>, a lecturer at
the University of Hull (United Kingdom). Released into the
public domain. [JDV:960911]

o hForth <> has been ported to
the ARM. [see the ``PC Forth'' section]

o wimpForth for the StrongARM under RISC/OS 3.7 is available from
the author <>.
o |aForth <> by Reuban Thomas is
a freely available implementation for the RISC/OS.

10. Forth written in C/C++


o Bradley Forthware C-Forth costs US$100.


o ThisForth
v1.0.0.d, by Will Baden, is a reluctantly ANS-compliant C-Forth
that originated on a Sun Workstation before the ANS-Forth
standard. It is intended as an embedded command line
interpreter and scripting tool for Unix applications. You will
need m4 and an ANSI-C compiler to compile it. Two major design
objectives were portability and ease of extending. The first
goal was achieved by sticking to Standard C, and the Standard C
Library; the second by the m4 macro processor to define
primitives in "low-level Forth". Binaries are available for a
number of architectures (Macintosh, CRAY, MIPS, SUN, SGI,
Intel). [JDV:970407]

o PFE (Portable Forth Environment)
v0.9.14 is an ANS-compatible Forth implementation written in
ANSI-C. All the code is under the GNU Library General Public
License. Binaries for various architectures available. The
interpreter has many bash-like features, like input completion.
A more powerful version with dynamic module loading is in final
testing. [JDV:02JUN98]

o pForth v19 <> is a public domain,
portable ANS Forth based on a kernel written in ANSI C.
designed to be easily portable to any platform, pForth has been
successfully ported to Macs, PCs, Suns, Amigas, SGI Indys, 3DO
ARM/PowerPCs and others. Features ANS standard support for most
word sets, debugger, DEFER and smart conditionals. Can be
compiled without any stdlib calls or special pre-processing.

o Gforth <> is a
fast and portable implementation of the ANS Forth language. It
works nicely with the EMACS editor, offers some nice features
such as input completion and history and a powerful locals
facility, and it even has (the beginnings of) a manual.
Distributed under the GNU General Public License. Gforth runs
under Unix (various flavors), DOS/Win (with GO32), OS/2 (with
EMX) and Win95/NT, and should not be hard to port to other
systems supported by GCC. Gforth-0.1beta
<> has been
tested successfully on Linux (Intel), SunOS (SPARC) and Ultrix
(MIPS). Linux binaries
<> and source

o HENCE4TH v1.2
<>; A
FIGforth written in C that currently runs under V7 Unix,
Personal C Compiler, and Mix Power C. Porting to other
platforms should be trivial, considering how vastly different
these three are! [KH:93]

o C-Forth <>
is available available from comp.sources.unix, or via ftp.

o TILEforth
forth-2.1.tar.z> by Mikael Patel is a 32-bit Forth-83. Can be
built on most 68000 machines (Amiga, Atari ST, &etc).

o Until v2.5.2
is (almost) Forth-83 written in C. Its internals are described
in the book "Write Your Own Programming Language Using C++"
(ISBN# 1-55622-264-5) by Norman Smith
<mailto:smi...@ORVB.SAIC.COM>. This implementation was designed
to call, and be called, by other C functions. It is ideal as a
'macro' language embedded in C/C++ applications. Comes with 175
pp. of documentation. [SJB:950720]

o |kForth 1.0
is available for Linux or Windows. It implements a subset of
the ANS-Forth Standard. Designed such that it's object code may
be interfaced to another program to serve as a customizable
application language. Features include low-level file access
words, string manipulation and type-checking on memory

11. Forth for Various Flavors of UNIX

Please see the ``C-Forth'' section.


o Bradley Forthware's Forthmacs. It comes with source code, an
assembly debugger, and floating point routines. Available for
Sun Solaris. [others? --jdv]

o iForth v1.07 is an ANS-Forth for Linux/DOS/Windows NT. May be
available free, with some restrictions. [see the ``32-bit PC
Forth'' section]


o 68K <>
is an indirect-threaded 32-bit Forth based on the 83 standard.
Written in 68K assembly (Motorola format) by Andy Valencia
<>. [SJB:94]

o A UN*X port of Forth-83
is available.

o A version of figForth
<> in
PDP-11 assembler is available. (Alternative site

o An eForth v1.0 port
eforth-1.0c.tar.gz> (by Francois-Rene Rideau) to Linux on an
i386 architecture is based on the DJGPP/GO32 version by Andy
Valencia. [SJB:950720]

o eForth <> has been also
ported to Linux by Marcel Hendrix. [JDV:970412]

o Gforth has been tested successfully on Linux. [see the ``C-
Forth'' section]

o 4tH v3.2e
<> has
been ported successfully to RS/6000, Linux, BSD, and others.
[see the ``PC Forth'' section]


o Firmworks Open Boot <>: built-in to the
SPARCstation PROMs. Inaccessible from the UNIX environment; you
have to interrupt the boot process and then type "n" to get to
Forth. [SJB:950720]

12. Forth for the Amiga


o Delta Research JForth Professional
<> 3.x comes with a tutorial,
libraries, and examples. The environment includes an editor
with ARexx, and a standard block editor. Although it behaves as
an interpreter, JForth is a true compiler. It can handle
precompiled modules and includes, and comes with a utility to
translate includes from C to Forth. JForth provides words for
handling C-style data structures, easy graphics and menus, IFF,
and ARexx. It also has an object-oriented programming system
suitable for building data types for large projects. [MH:93]

o A4th by Appleman
is a 32-bit port of L&P F83 complete with metacompiler written
for the A1000. [JJW:931021]

o F68K & F68KANS by Joerg Plewe should work if you can implement a
loader. [see the ``8051'' section2]

o Jax4th <> is a dp-ANS2
implementation by Jack J. Woehr. [JJW:990102]

FORTH.lha> by MVP is available for the Amiga at various sites

o TILEforth
<> will
run on most 68000 machines. [see the ``C-Forth'' section]

13. Forth for the Atari ST


o Bradley Forthware Forthmacs is available for $50 w/ optional GEM
support, source code, floating point, applications stripper and

o bigFORTH, by Bernd Paysan, is available for 200 DM. Extras:
Source code, floating point, GEM interface, object-oriented
extensions, native code compiler.

o F68KANS, Joerg Plewe. As per the free version, but you can use
it commercially. Contact Joerg for licensing details.

o HiSoft FORTH is a 32-bit Forth for the Atari ST, with full
support for GEM. It is subroutine threaded, and a Motorola
68000 assembler is also included. [HM:93]


o F68K
and F68KANS
Joerg Plewe. F68KANS is ANS-aligned.

There are plenty of implementations, docs and code of unknown
pedigree available for your perusal here [anyone care to
comment? --jdv]:

o <>

o <>

14. Forth for the Transputer


o MicroProcessor Engineering, Ltd. (MPE) Forth5 Cross Compiler for
the T-212, T-414 and T-800. The package consists of a PC-hosted
(Unix if required) cross compiler and target code. All source
code is included.

o |Transputer eForth <>
by Rob Barr for the Inmos 32-bit transputers is an experimental
system not yet fully tested.

o tForth <> is a parallel,
32-bit ANS-Forth for the INMOS range of Transputers. Supports
all of the Transputer hardware: task-switching, floating- point,
the on-chip timer, and the links. tForth is optimized for
speed, with an integrated optimizer, and OCCAM-like constructs.
Dynamic memory and recursion is supported, as are semaphores and
queues, to enable multi- process I/O. A full ASSEMBLER
vocabulary is included, with cross- assembly to other models
available. Extras include: symbolic dis- assembler, debugger &
profiler, buffered I/O, SVGA drivers (DOS), C server, double and
single precision floating point math. tForth (binaries for T4
and T8 models, a DOS/UNIX server, and a 400+ page manual) sells
for $400. Access to source code for the server must be
negotiated with the author. Contact Willem Ouwerkerk at DFW.


o F-TP v1.00
<ftp://ftp/leo/org/pub/comp/os/dos/programming/forth/transputer/f-> is a free Forth-83 for the T-80x INMOS transputer
family, designed to replace the OCCAM development kit. Most of
the ANS core wordset is implemented. Some highlights include:
trig functions, metacompiler, debugger, disassembler, Forth
decompiler, assembler, integrated DOS calls, parallel
processing, online help for all vocabularies and plenty of
documentation. [JDV:970705]

o pd-forth
is a freeware implementation of Forth for 16 & 32-bit
transputers, with source by Laurie Pegrum. Requires the D705
OCCAM development system, and a 32-bit Transputer board with 1Mb
of memory to recompile or run. Uses iserver interface to host.

o There are several implementations
<> of Forth
for the transputer made available by Ram Meenakshisundaram.

15. Forth for the Tandy TRS-80


o MMS have a nonDOS version of their MMSFORTH for the Model


o MVP-FORTH for the Model 4 by Art Wetmore. The basic MVP-FORTH
system is released into the public domain. Contact MVP for

o There's an implementation of Forth for the Model 100 available

1. <>

2. <>

o HartForth
by A. M. Graham is a Forth 79 implementation for the Tandy
TRS-80 Model I/III/4. The documentation is available as plain-
text (ASCII)
Microsoft Word 97
and Scripsit

16. Forth for the Apple II


o Apple Forth v1.6, Cap'n Software. Uses a unique disk format.

o 6502 Forth v1.2, Programma International. [LWV:93]

o FORTH II for the II+ or //e by Softape. [LWV:93]

o Raven Forth (+) by C. K. Haun, runs on IIgs. Available on GEnie
Library 19 as file 903. [LWV:950919]

o MicroMotion: MasterFORTH for II's. Features: graphics,
debugger, file handling, software floating point. Follows the

o MVP offer MVP-FORTH; a 79-standard for II's.


o GraFORTH(+) for DOS 3.3, by Paul Lutus. Available on GEnie
Library 8, file 3299. [LWV:950919]

o Mad Apple Forth(+)
<> [LWV:93]

o Purple Forth(+)

o QForth(+) <>
v2.0, Alpha 1.0, is a small integer Forth written by Toshiyasu
Morita <>. [LWV:93]

o GS 16 FORTH II, Version II (+)
- A 16-bit implementation able to make use of the GS Toolbox.
Includes assembler and full screen editor. Also Available on
GEnie (Library 18, file 2124/2125). [LWV:950919]

o Various at

17. Forth for VAX/VMS

Please see the ``C-Forth'' and ``UNIX Forth'' sections, as some C and
UNIX based systems may port without too much effort.

[I am currently unaware of any commercial VAX/VMS Forth --jdv]


o vforth
forth.tar-z> is a 32-bit forth based on the FIG model, but it
deviates where necessity or religion demanded. It will run on a
VAX running 4.2, and tends to use the UNIX system calls in only
the most generic of ways (i.e.: it should move to 4.1 without
problems). vforth uses subroutine threading and inline code
generation to increase performance.

o John O. Comeau <> has made the
<> and
for versions 1 & 2 of FIG-Forth for the VAX/VMS available.

o Klaus Flesch wrote a VAX VMS Forth some years ago. It is
believed to be derived from FIG-Forth. Availability is
uncertain; try contacting the author, c/o Forth-Systeme.

o There are two files of unknown pedigree at

18. Miscellaneous Forth

This is a catch-all section for implementations that didn't seem to
warrant their own sections.

18.1. Musical Forth

o HMSL (Hierarchical Music Specification Language); Frog Peak Music.
Contact Delta Research, or Phil Burk <>, at
the Center for Contemporary Music at Mills College.

o MANX 1.0 is an extension of the regular Forth environment, enhanced
with a number of special purpose music language words. The program
is able to read and write standard MIDI files, with special
instrument drivers taking care of I/O details. At this moment MANX
has drivers for metallophones, the PC speaker, and GM (General
MIDI) synthesizers or sound cards that support MIDI. This music
language aims to be complete in the sense that a user should be
able to translate anything written down in conventional scores to
MANX commands. 32-bit ANS-Forth, with many extensions. Free with
iForth [see the ``32-bit PC Forth'' section]. [JDV:970315]

18.2. Java Forth

o jeForth <> is a Java applet based on
eForth that is free for non-commercial use. It has been designed
to be compatible with the description of Forth in Brodie's
"Starting Forth". A commercial version is being planned.

o Misty Beach Forth <> is an ANS-compliant
implementation that runs as an OS independent applet. It is
designed to run multi-threaded code at speeds comparable to native
Forths. The full package will include an IDE.

o DELTA Forth is a non-standard Forth system, as it is a compiled
dialect. It runs on Java, so it is platform-independent. DELTA
Forth is free of charge, as it is still in Alpha development stage.
The most important feature apart from being platform independent is
that DELTA Forth has support for external libraries, so its
capabilities are virtually limitless. Please email the author
<> for details.

18.3. USR/3COM Pilot/Palm Pilot/Palm

o Quartus 1.2.1 <> is an on-board
native ANS Forth optimizing compiler for the USR/3Com Pilot,
Palm Pilot and Palm III series of PDAs. Standard precompiled
(PilRC) resources can be used in your Quartus programs and there
is built-in compiler awareness of the PalmOS systrap calls.
There is an evaluation-only version which will not compile code
to a .prc.

19. Forth that ain't necessarily Forth


o FIFTH by Software Construction Co. Available for the Amiga, PC.

o Charles Moore's OK for PC's was developed as the OS for Chuck's
VLSI CAD system. It is essentially a minimal Graphical User
Interface (GUI). Available from Offete Enterprises, Inc.
<> Source for the MuP21 Forth
compiler is also available.

o Meme (Multitasking Extensible Messaging Environment) from
Immersive Systems, Inc. is a Forth interpreter with multitasking
and floating- point extensions. The executable has a fast 3D
rendering engine and a TCP/IP interface that is callable with
Forth words. Each object in a Meme virtual world is a
dynamically-loadable module. The executable Forth code in the
modules is a hybrid of token threading and indirect threading
that is platform-independent and executes identically on any
computer running the Meme interpreter. [JDV:960911]


o Kevo <> by Antero Taivalsaari
<> is a prototypical (classless) object-
oriented language (for the Mac) which has a Forth feel to it.
Features multitasking, dynamic memory management, and an
integrated (Mac Finder-like) iconic programming environment.
Comes with source, demo programs, and some documentation.

o ANNforth
by Bruce J. McDonald. No documentation, but a header file
states "ANN simulator with forth interpreter". Written in C++.

o TIPI v2.0a <> is a small, structured,
extensible programming language for DOS computers. It requires
about 100K bytes of RAM to run and is thus well- suited for
palmtop computers such as the Poquet PC, the HP-95LX or the
HP100LX. TIPI incorporates elements from various languages (C,
Pascal, awk, BASIC) and owes a tremendous amount to Forth.
While TIPI is not Forth, it is definitely Forth-like and Forth-
inspired. A Windows CE version may be in the works.

o FIJI <> is a Forthish Java
interpreter by Jack J. Woehr.

20. Contributors and Acknowledgments

This document is based on previous work by Stephen J. Bevan, Doug
Philips and Bradford J. Rodriguez.

Many thanks, and a box of *magic* cookies, to the following for
providing the information for this section of the FAQ:

o Bruce Bennet <> (BB)

o Stephen J. Bevan <> (SJB)

o Mitch Bradley <> (MB)

o Mike Coughlin <> (MC)

o Valery P. Frolov <> (VPF)

o Mike Haas <> (MH)

o Kevin Haddock <> (KH)

o Rick Hohensee <> (RH)

o Andrew P. Houghton <> (APH)

o Nan-Hung (Carl) Lin <> (CL)

o Benjamin Lee <> (BL)

o Henry McGeough <> (HM)

o Dick Miller <> (DM)

o Julian V. Noble <mailto:j...@fermi.clas.Virginia.EDU> (JVN)

o Bernd Paysan <> (BP)

o Elizabeth D. Rather <> (EDR)

o Bradford J. Rodriguez <> (BJR)

o Antero Taivalsaari <> (AT)

o Larry W. Virden <> (LWV)

o Jack J. Woehr <> (JJW)

21. Legalities, Miscellanea and Caveats

This document is not in the public domain. To keep it freely
accessible to all, I've reserved all rights of ownership. You may
distribute copies or quote from this compilation freely on the
conditions that credit is given to the contributors, and this entire
copyright notice is included with any quote or copy:

"The Forth Systems FAQ, Copyright (C) 1996 by John D. Verne. All
Rights Reserved."

If, for some strange reason, you wish to make money by copying or
distributing this document, please let me know <>.

The other parts of this FAQ may be copyrighted by their respective
authors, as well. Consult with the author(s) of the other parts for
more complete copyright information.

Some terms mentioned in this document are known to be trademarks or
service marks. However, the author(s) have made no attempt to label
them as such. The reader should contact the appropriate companies for
complete information regarding trademarks and registration. This
document is provided "For Your Information" only. The author(s)
accept no responsibility for errors or omissions, or for loss or
damages resulting from the information contained herein.

'Nuff said. May the Forth be with you.

J. D. Verne

Jul 4, 2000, 3:00:00 AM7/4/00
Posted-By: auto-faq 3.3 (Perl 5.004)
Archive-name: computer-lang/forth-faq/part7

Posting-Frequency: Monthly. A how-to-find-the-FAQ article is posted weekly.

ANS Forth: The Standardisation Process

Peter J. Knaggs, 3 July 1999

Please send omissions or corrections to Peter Knaggs <>.

Table of Contents:

[1] What is the Current Status?
[2] Are there any Web Site?
[3] Are there any discussion groups?
[4] Where can I purchase the standard?
[5] What is being revised?
[6] When does the TC meet?
[7] How do I make a proposal?
[8] Who is on the Technical Committee (TC)?
[9] How can I join the TC?
[10] What are Technical Groups?
[11] What is the ANSI Process?
[12] What is the ISO "Fast Track" Process?

Search for [#] to get to section number '#' quickly. Please note that
each section is in "digest" form so cooperating NEWS/MAIL readers can
step through them easily.


Subject: [1] What is the Current Status?

On the 25th September, 1998, the NCITS agreed to the J14 Technical
Committee's request for reactivation, thus changing the status of the
Technical Committee from Maintenance to Active.

The next meeting will be November 22-23 at the Hampton Inn in Seaside,
CA (see [6] for details). The TC will conduct most of its bussness on
the ansforth mail-list (see [3] for details).


Subject: [2] Are there any Web Site?

Greg Bailey of ATHENA Programming, Inc., keeps the ANS Forth Web Page at:


The NCITS (National Committee for Information Technology Standards)
keeps an official web site at:



Subject: [3] Are there any discussion groups?

General discussion and comment on the standard should be directed though
the usenet news group:


A separate mail list has been established for more formal announcements,
comments, and questions. All mail sent to this mail list will be
distributed to all subscribers (including all members of the Technical
Committee) and archived for further reference. Mail should be sent to:


Subscription and unsubscription request should be sent to:



Subject: [4] Where can I purchase the standard?

There are two different version of the standard:

ANS Forth - American National Standard Forth (document
"X3.215-1994, Programming Language Forth") can be purchased

Global Engineering Documents, Inc.
15 Inverness Way East
Englewood, CO 80112-5704

1-800-854-7179 (within USA)
303-792-2181 (outside USA)

The final draft of the standard is available from the ANS Forth
web page.

ISO Forth - The document "ISO/IEC 15145:1997 Information technology --
Programming languages -- Forth" can be purchased from
your local national standards organisation.


Subject: [5] What is being revised?

The Technical Committee voted to revise the ANS Forth standard with a
limited agenda:

(a) Withdrawal of "obsolescent words"

(b) Ratification of "clarifications"

(c) Support for embedded and ROMable systems

(d) Support for internationalisation and extended characters

(e) Clarifications to the Standard, with the proviso that
proposals will be considered under this item that clarify
the language of the Standard to reflect the original intent
of the TC, without making a substantive technical change.

Note the (c) & (d) were requested by the ISO Fast Track process. The
committee is not obligated to consider proposals falling outside this
agenda without first voting to extend it. This requires a 2/3 vote of
the Committee.


Subject: [6] When does the TC meet?

While the committee is revising the standard, they plan to meet twice a

June, coinciding with the Forth Institute's meeting.

November, coinciding with the FORML meeting.

Members of the TC are required to attend one in every three meetings. The
meetings have been arranged such that attending one a year is sufficient
to retain membership of the Technical Committee.

The following meetings have been arranged:

22-3 November '99
Hampton Inn, Seaside, CA.
To coincide with the Forth Modification Laboratory.
Note that this is expected to be the final meeting.


Subject: [7] How do I make a proposal?

Anyone can make a proposal. The proposal should first be discussed on
the ANS Forth email list (See <a href="#3">[3]</a>) and attempt to gain
consensus on the ideas to the maximum extent possible.

After this a formal proposal must be drafted and submitted to
electronically by sending plain (7-bit ASCII) text or Word files to the
Chair at <>. You may also submit a proposal via
mail by sending it to:

J14 Technical Committee,
c/o FORTH, Inc.,
111 N. Sepulveda Blvd,
Manhattan Beach,
CA 90266, USA;

All proposals must conform to the following criteria:

a) Consists of specific wording changes or additions to the document,
rather than statements of policy.

Bad form: Add DEFER and IS
Good form: Add the following to the {specified} wordset:
{specific definitions, edited so as to be readily
pasted into the document in the right place}

b) Include a rational for the change, including a citation of common
practice in which the proposed technology has been proven.

c) Fit within an approved agenda item (see [5]), or must include a
rationale why it should be considered; this must be sufficiently
urgent that 2/3 of the membership will vote to add an agenda item for

We suggest proposals should provide information in the following

Title - One line summary of the proposal.
Justification - Justification for consideration of the proposal.
Problem - Description of the problem the proposal is
attempting to resolve.
Proposal - The proposed alteration to the current working draft
of the standard. This should give the page and the
text you wish to delete and/or add.
Typical Use - Examples of how you envisage the proposed technology
being used.
Remarks - Additional comments, implementation comments,
side-effects, etc.
Experience - Examples of current practice, experiences with
the proposed alteration.
Comments - Comments of support from others.

The proposal must be submitted to the Chair with a message indicating
that it is a formal proposal for the consideration of the committee.

Upon receipt, the proposal will be examined by the committee chairs. If,
in their opinion, it meets the above criteria it will be assigned a
proposal number and circulated to the members of the committee for their
consideration. It is also posed on the ANS Forth web site (See [2]). If,
in the opinion of the chairs, the document does not meet the criteria
they will discuss possible changes with the author that will improve it
to the point where it can be accepted. Rejection by the chairs can be
appealed to the committee. The committee can overrule the chair's
decision by an 80% vote of those voting, provided the total vote
constitutes a quorum of the voting membership of the committee.

Further processing of the proposal will occur after receipt of a second
to the proposal from a member other than the proposal originator. The
second must be posted to the ANS Floor. After a period of time not less
than one week the chair may, at its discretion, declare that the proposal
had died for lack of a second and remove the proposal from active

After a proposal has been seconded the author may make further revisions
until the end of the comment period. Others wishing to have the proposal
modified should first discuss the proposed changes with the author and on
the ANS Forth maillist. If the author does not accept the changes and the
person offering the changes wishes to have the committee take formal
action on them, the changes should be submitted to the Chairs as a formal
amendment to the proposal. The chairs will publish notice of having
received the proposed amendments, they will be posted to the FTP site,
and there will be a period of one week during which any voting member of
the committee can offer a second to the proposed amendment. Upon receipt
of a second there will be a period of two weeks at the end of which the
amendment will be either accepted or rejected by a majority vote of those
voting on the amendment.


Subject: [8] Who is on the Technical Committee (TC)?

The current membership roster for the Technical Committee is maintained
by Greg Bailey (as Vice Chair) and is available at:


The list of TC Officers is available at the bottom of the J14 Current
work page at:



Subject: [9] How can I join the TC?

Anyone can join the Technical Committee.

While the committee is active (from now, until the committee finishes
its work and deactivates again) prospective members should attend at
least two out of three successive meetings. A representative shall
attend the first of these meetings as an observer and reaffirm interest
in the work of the committee. Membership becomes effective with
attendance at one of the next two successive meetings and the payment
of a $300 administration fee.

Membership shall be terminated under the following conditions:

(1) Failure to pay any service fee within the specified period (normally
an annual $300 administration fee);

(2) Failure to attend two out of three successive meetings, in which case
the membership shall be terminated if the member fails to attend the
next meeting;

(3) Failure to return 80% of the total letter ballots (non-accelerated)
closing during the present calendar quarter, in which case the
membership shall be terminated if the member fails to return at least
80% of the total letter ballots (non-accelerated) closing during the
subsequent quarter.

When the committee deactivates again (after it has completed its current
work) applications for membership should be sent to the Chair
<>. Membership becomes effective after the second
letter (eMail) ballot. Members will lose their membership by failure to
respond to three successive ballots, or failure to pay any service fee
within the specified period.


Subject: [10] What are Technical Groups?

The TC may convene Technical Groups (TG) to look into areas where there
is no consensus of "common practice" within the community. The Technical
Group is a sub-group of the TC given a specific mission, whose product is
a "Technical Report." A TR doesn't have the official standing of a
Standard, but can serve as a basis for implementations for some years
until the technology has matured sufficiently for a standard.


Subject: [11] What is the ANSI Process?

The ANSI process requires that four-years after the standard has been
approved the standard may be revised, reaffirmed, or withdrawn.

The Technical Committee receive a number of proposals to change the text
of the ANS Forth document, which they will vote on. When the TC are
happy with the revised document it is published as a draft report for
public comment. The TC must then review the comments and either publish a
new draft or submit the draft for approval by the NCITS. It can take a
year between the TC submitting a draft for approval and the standard
being published.


Subject: [12] What is the ISO "Fast Track" Process?

Once the ANSI standard has been published, it can be submitted to the ISO
for adoption as an international standard. This circumvents the need for
a separate ISO Forth committee.

For ISO to adopt the ANS Forth standard requires a two-thirds majority of
ISO voting members. All no votes are supported by technical comment.


Peter Knaggs <>

Reply all
Reply to author
0 new messages