tile - c based forth-83 standard compiler and programming environment
uses a command syntax much like a compiler. The
arguments are loaded before the interaction top loop is started. A
may also be given as an argument making
act as a `compile-and-go' compiler of applications. Any extra
options or parameters passed to
may be accessed by the application. As extensions of the Forth-83 Standard
supports floating point numbers, strings, multi-tasking, exceptions,
private definitions, argument binding and local variables and much more.
Written in C the kernel may be used as a general purpose environment
for interactive testing and development of C-code.
To provide an interactive programming environment for developing programs
may be run as a sub-process to GNU Emacs in a specialized
Source code may be edited and directly tested by passing either
a paragraph of code or a whole buffer to
from Emacs. The
also supports documentation retrieval and automatic indentation of
forth code, comments and definitions.
An environment variable is used to specify file search paths and
support management of libraries of source code.
compiles faster than most compilers link with approx. 70.000 lines per
minute on a SUN-3/60 (and over 200.000 on a SUN-SPARCstation 1).
Code is only saved in source form.
Loading all available library code takes less than a second.
- Size of dictionary in bytes. Default allocation is 1024K bytes.
- Size of foreground process parameter stack in cells (32-bits).
Default allocation is 256 cells.
- Size of foreground process return stack in cells (32-bits).
Default allocation is 256 cells.
- Size of foreground process user area in bytes.
Default allocation is 1024 bytes.
- -a argument ...
- Allows access of the rest of the arguments. The first arguments is the string
- -s start-symbol
- Defines the symbol to be used instead of the normal interaction top-loop.
becomes the first argument and any further arguments may be accessed by the
application. The library contains some examples of argument fetching functions.
environment consists currently of five directories with C kernel source,
forth-83 source library, test and example code, manuals and documentation.
contains all the C-level code and the GNU emacs programming environment.
contains Forth-83 source code modules, consisting of a number of
data modelling, and debugging tools, and high level multi-tasking
constructs such as semaphores, channels, rendezvous and task types.
Documentation of the source code and the kernel are found in the
and in the directory
These are use for handling manual commands or documentation search in
the programming environment (in GNU emacs). Test programs for each
forth-83 source library code may be found in the directory
- Forth-83 source input file
- Forth-83 source test file
- Forth-83 source manual pages
- Forth-83 source documentation file
- multi-tasking c based Forth-83 kernel and extension vocabularies
- error management package
- multi-tasking input package
- memory management package
- this application
- GNU Emacs forth-mode source
- this manual
- puts the forth application together
- Path for the tile directory structure. A normal setting for a single
user is `$HOME/tile'.
- Search path for library source files. A normal setting is
`$TILE/lib:$TILE/tst' which will allow the file include
to locate library source files in the current directory ($PWD), the
standard library, and the test code library.
also looks for files at your home directory ($HOME).
- Search path for manual source files. Used by
for access of manual pages. Setting this environment variable to
`$TILE/man:/usr/share/man' will allow you to read the
GNU EMACS FORTH MODE
The GNU Emacs forth-mode supports interactive programming, automatic
indentation of source code, and documentation search of the
kernel and library within Emacs. To allow automatic loading of the
file should contain the following definitions;
(setq forth-help-load-path '(nil "~/tile/doc"))
(append '(("\\.tst$" . forth-mode)
("\\.f83$" . forth-mode))
(autoload 'forth-mode "forth")
Further documentation about the
may be found by giving the command `M-x describe-mode' in Emacs.
Bugs should be reported to firstname.lastname@example.org. Bugs tend actually to be
fixed if they can be isolated, so it is in your interest to report them
in such a way that they can be easily reproduced according to
get newer version.
Copyright (C) 1989-90 Mikael R.K. Patel
Permission is granted to make and distribute verbatim copies
of this manual provided the copyright notice and this permission
notice are preserved on all copies.
Permission is granted to copy and distribute modified versions
of this manual under the conditions for verbatim copying,
provided also that the section entitled "GNU General Public
License" is included exactly as in the original, and provided
that the entire resulting derived work is distributed under
the terms of a permission notice identical to this one.
Permission is granted to copy and distribute translations of
this manual into another language, under the above conditions
for modified versions, except that the section entitled "GNU
General Public License" may be included in a translation approved
by the author instead of in the original English.
Mikael R.K. Patel
Computer Aided Design Laboratory (CADLAB)
Department of Computer and Information Science
S-581 83 LINKOPING