(black lines). One implementation (the child) directly
incorporates (or got started by incorporating) significant amounts of
code from another implementation (the parent). For standards, text is
incorporated instead of code.

conforms-to

(red lines). A Forth implementation conforms
to a standard; also known as implementing the standard.

inspired

(green lines). Words or concepts from one Forth
implementation were incorporated in an implementation or standard.
Only the most significant "inspired" edges are shown, to avoid
clutter.

But implementation X is missing

That's because you did not send me any data on X. Don't complain,
just send me the information (see below).

Forth family tree

This is a client-side image map. If your browser supports that
feature, clicking on an implementation will get you to a page about
that implementation or standard (in many cases; there are not pages
for all of them); also, your browser may display a tooltip for these
nodes with a few details (typically about authors or features).

Forth Timeline

This is a client-side image map; the links and tooltips are exactly
the same as in the family tree.

You can describe the information about an implementation and its
relations to other implementations informally; or you can describe it
formally as a Forth program (see below). Then email it to me, or post it in comp.lang.forth.

For the formal description, you first have to define all the nodes
(implementations/standards) involved, in one of the following ways:

If you have any additional information, include them in comments.
That's all there is to it.

How it works

The source file tree.fs runs (on Gforth), and produces tree.dot, the
input file for dot (the directed graph layout tool from the graphviz toolbox). Dot can produce
a layout for the graph, in various formats, among them Postscript; it
also produces y-coordinates for the nodes (which are processed into
timeline.fs), which are then taken by tree.fs in another run to
produce timeline.neato (basically a version of tree.dot, but with the
node positions fixed). This file is then processed by neato (another
graphviz tool) to produce the timeline in Postscript format.
Currently the GIF and PDF formats are produced from the Postscript
formats.

Doing your own tree and timeline

Just grab the source package, unpack,
edit the files for your needs, and say "make". You need GNU make, Gforth, graphviz, Ghostscript, awk, and the
netpbm tools with the current Makefile (less if you don't need all the
formats).