A patch to allow proper compilation of kForth 1.5.2 under gcc version >= 4.8 is available. Please see the Updates Page. All previous patches for version 1.5.2 must be applied first. A replacement Makefile is also provided
to update the version label to 1.5.2p2.
Patches for kForth 1.5.2 are
available. Please see the Updates Page.
kForth version 1.5.2 has been released
Please see the Revision History Page for
information about the new release.
Several example Forth files have been
updated, and new examples have been added since the release of version
1.5.1. The updated and new examples are listed below:
kForth version 1.5.1 has been released
Please see the Revision History Page for
information about the new release.
A patch is available for the 2009-11-30
of kForth 1.5.0 for x86-linux.
An updated syscalls.4th file, renamed from syscalls386.4th,
is also available. Please see the Updates page.
Development of version 1.5.x of kForth
for Linux has begun, and the 1.4.x development has stopped. kForth v1.5.x
allows multiple word lists, and will provide the full set of search order
words in Forth-94. Please see the
The latest development snapshot
(2009-05-03) in the version 1.4.x series of kForth for Linux may be
considered an alpha version for the next release. Please see the
1.4.x development tree of kForth for Linux. The
README.SNAP file documents the changes from earlier releases.
Patches are available to fix a
problem with specifying relative paths for INCLUDE. Please
see the Updates Page. The shell environment
variable, KFORTH_DIR, may be used to specify the default
directory for including .4th files (see
Installation). When this environment
variable is set, INCLUDE does not properly handle a file name
containing a path specifier relative to the default directory. The patches,
ForthVM.diff and ForthVM-fast.diff, fix this problem.
In the current kForth distribution packages, all
example Forth programs are provided in the top level source directory. Future
packages will organize the .4th files, by category, into their own
Critical patches for the x86-linux
distribution of kForth 1.4.1 are available on the
Updates Page. The patches, vm.diff
and vm-fast.diff, fix a potential problem with the implementation
MOVE on some Linux systems.
kForth 1.4.1 for Cygwin under Windows
(x86) is now released.
A new version of the Hayes' test utility
for developing automated tests of Forth code is available,
The new version, by Anton Ertl, integrates the floating point
test words by David Williams, ftester.4th, in a unified
method. For backwards compatibility with the original version,
provided as a wrapper for ttester.
Using the new test utility, test code for several of
the FSL modules has been revised and automated:
It is planned to gradually revise all of the test code in the
kForth FSL modules to perform similar automated tests. Testing of
the entire set may then be performed by a single Forth program. We have
begun this effort by implementing the following files:
Other files which have been revised to use the new
test utility are
The original kForth matrix package, matrix.4th,
has been deprecated in favor of using FSL-style arrays and matrices. A
revision of example programs which used the old matrix package is underway.
The following files have been revised:
a word to compute determinants, found in the original matrix package,
has been separated into its own Forth module, and rewritten using FSL
The original versions of curvefit.4th and gfit.4th
have been replaced with their FSL-compatible versions. See
kForth 1.4.1 for OS/X (ppc) is now
kForth 1.4.1 for Linux (x86) is now
released. The new version features bug fixes, speed improvements, greater
compatibility with ANS Forth, and new features such as the ability to
make executable Forth scripts. The revisions, over v 1.3.2, are listed
on the Rev. History Page.
is available. This file contains handy programming utilities for kForth.
We are saddened by the announcement in
of the passing of Dr. Julian V. Noble, a prominent member of the Forth community.
Dr. Noble's book, Scientific Forth (no longer in print), and the code
which he contributed openly to the Forth community, are the foundation of the
Forth Scientific Library (FSL).
Recently updated Forth files:
A new development snapshot of
kForth 1.4.x under Linux (x86) is available for testing. Please see the
development tree to download the latest snapshot
kforth-x86-linux-2007-02-20.tar.gz. Also, please view the
file for a list of changes in 1.4.x.
A long-standing bug in the standard benchmark program,
matrix-mult.4th, has been fixed.
An update of the
assembler is available. The update fixes problems with assembly of byte
and word register operands. A new assembly language example is also
which requires the updated assembler.
- 2006-11-09 More FSL files are available for use under kForth. These
Please see the Programming Examples page to
download these files.
- 2006-11-01 Additional files from the Forth Scientific Library have been
ported to kForth. These are:
The following FSL files have also been updated with minor changes (not
- 2006-10-21 Patches for kForth 1.3.2 are now available. These
patches provide a check for division by zero in the words MOD
and /MOD. Previously, a zero divisor would cause these words to
fail silently. Please see the Updates and
- 2006-10-17 A port to kForth of the classic
Super Star Trek game, originally written in BASIC, is now available:
- 2006-09-10 Two new Forth programs for use in science education have
been added to the Programming Examples Page.
The first is another program in the Quantum Mechanics Demonstrations series,
and the second,
illustrates the spectral broadening of light emitted by an atom undergoing
collisions with other atoms.
- 2006-07-06 The Emacs editor
may be customized to provide syntax
highlighting and auto indentation for Forth source programs. Instructions
and code for configuring Emacs for Forth mode are provided in the kForth
- 2006-06-27 Updated Forth programs for communicating with HP and
Agilent Digital Scopes (546x series and 54750) are available for use
under Linux. Please see the following files on the
Programming Examples Page:
hpcommon.4th Common words for HP and Agilent Scopes
hpwfmhdr.4th Header structure for waveform files
hp54750.4th Interface to HP 54750 Digitizing Scope
hp546x.4th Interface for Agilent 546x series Digital Scopes
hp.4th Menu interface for Agilent 546x scopes
- 2006-06-14 kForth for Mac OS X, running on the PowerPC, is
available! The ppc-osx release is version 1.4.0 and contains
new additions to the kForth dictionary. Please see the
README file for
instructions on building kForth on the Mac OS X ppc system.
- 2006-06-04 Maintenance updates of kForth 1.3.x for Linux and
Windows are now available. Version 1.3.2 incorporates several
bugfixes, and enhancements to the VM for faster execution. Please see
the Revision History for details.
- 2006-04-14 Patches are available to fix a problem in the kForth signals
interface for Linux and Windows, version 1.3.1. Please see the
Updates and Patches Page to download these patches. A corresponding test
signal-test.4th, demonstrates the signals interface error with v1.3.1, and
may also be used to verify the patched version.
- 2006-03-19 The following programs are now available:
curvefit-fsl.4th A version of curvefit.4th which uses FSL arrays
gfit-fsl2.4th A program demonstrating use of curvefit-fsl.4th
fft-x86.4th An assembly language implementation of Fast-Fourier Transform
- 2006-03-13 New versions of
- 2006-02-18 An experimental version of a new virtual machine for
kForth is available for v1.3.1 under Linux. The new virtual machine speeds
up execution by 10--25% on the standard benchmarks. The new VM is available
development directory. Please see the README file, and note that this is
experimental code which is currently under testing. It is expected to be
part of a future kForth release.
- 2006-02-11 Revised versions of the following Forth programs are available:
In addition, the following programs are available:
- 2006-01-24 The kforth-doc package has been updated and is
available for download below. This package provides the kForth User's Manual
in HTML format.
- 2005-11-08 The Windows version of kForth 1.3.1 is now available as a source package.
See the Installation section of the
User's Guide for instructions on building kForth
from the source package. The README
file in the package also contains build instructions.
- 2005-10-26 kForth version 1.3.1 is now available for Linux.
- 2005-09-28 A critical update of the ANS File Access words are
uder Linux, and filesw.4th
under Windows. The updates fix a non-standard behavior of READ-LINE when the
end of file condition is encountered. These updates neccessitate updating the
following example files as well:
In addition, users should review their own code which uses READ-LINE since their
code may rely on the non-standard behavior which existed previously. The updates to
files.4th/filesw.4th may break such code.
- 2005-09-02 The FSL module for LU factorizing real square matrices
is now available: See
- 2005-08-30 An update to
matrix.4th is available.
- 2005-08-27 Two new Forth programs have been added to the
Programming Examples page:
- 2005-04-27 A revised version of the National Instruments GPIB
driver interface for kForth under Linux is available:
- 2005-04-17 A program from the
Forth Scientific Library
for adaptive integration of functions has been added to the kForth
Programming Examples page.
See the file
- 2005-03-27 The list processing wordset
lists.4th has been updated to allow multi-line list input.
- 2005-02-15 Updated Makefiles are available for
kForth 1.2.6 for Linux. These updates allow kForth to be built
as a 32-bit application on 64-bit Linux systems. See the
Updates and Patches page.
- 2004-10-24 Several users have reported that kForth for Windows
does not start properly from the Windows Command Prompt. There is either
a long delay, or the application hangs. Versions of kForth for Windows
prior to 1.0.13 did not have this problem. The kForth
Under Windows Instructions have been updated. Use of the
Cygwin BASH shell is the recommended way to start kForth under
- 2004-09-08 An update of
ansi.4th include new console query words:
- 2004-07-16 A bug in the Forth Scientific Library (FSL)
dynmem.4th has been fixed. This bug, in the definition of the
2D array memory deallocation word
}}free, existed in
the original FSL code.
- 2004-06-26 kForth 1.2.6 for Windows packages are
now available for download below.
- 2004-06-20 Announcing the release of kForth 1.2.6 for
Linux!. This is a major upgrade which integrates the regular
and fast versions of kForth into one package, provides a number
of bug fixes and additions, improves ANS Forth compatibility,
and provides a higher execution efficiency. The detailed list of
changes will be provided on the Revision
History page. The distribution file may be downloaded below.
- 2004-06-18 A program by Brad Eckert converts Forth source
files into color-coded HTML files. A preliminary version is available
for kForth; see the file
forth2html.4th. See also the
of this program for more information.
- 2004-03-12 A version of the serial port interface (serial.4th)
for kForth now works under Windows. See the kForth
Programming Examples page for the file
serialw.4th. A simple terminal program that illustrates how to
use serial.4th and serialw.4th is provided
for both Linux and Windows: terminal.4th and
- 2004-02-19 A new Forth module in the Quantum Mechanics Demo
series has been released. The file,
provides software to help illustrate principles of QM with spin
states of an electron. Be sure to obtain the latest revision of
zmatrix.4th and the other needed include files.
- 2004-01-13 The development version of a faster variant of
kForth, called kforth-fast, is available for trial under Linux.
Although not officially released yet, interested users may download
the source package
kffastlnx10.tar.gz and try it out. See the associated
README file for a description of its differences from the ordinary
version of kForth.
- 2004-01-02 The file
curvefit.4th has been updated with a bug fix. A version of
the nonlinear curve fitting example
gfit.4th) which makes use of the FSL Levenberg-Marquardt algorithm
levmarq.4th) is also available:
- 2003-11-16 An update of the
Scientific Library interface
fsl-util.4th contains a bug fix and an additional definition.
The following FSL packages have also been ported to kForth:
gaussj.4th, a package for solving a linear system of equations
using Gauss-Jordan elimination.
shellsrt.4th, a sorting utility for floating point arrays.
regfalsi.4th, a function root-finder.
Also, the file
stats.4th has been extended to provide words for calculations
involving the Gaussian probability density function.
- 2003-10-26 The file
quadratic.4th has been updated to fix a bug in the calculation
of complex roots.
- 2003-10-15 The HTML User's Manual package for kForth has been
updated and the new version of
kforth-doc.zip is available for download.
- 2003-09-28 An update of
ans-words.4th is available. See the
updates page for more info.
- 2003-09-20 Several new programs have been added to the
Programming Examples Page. These are
base64.4th, for performing base64 encoding and decoding of
files, and Marcel Hendrix's neural network module and example:
- 2003-05-17 An update of
- 2003-05-15 The complex words package has been updated to the
latest version by Julian V. Noble and David N. Williams. Also
available are DNW's test code for the complex wordset. The new files
In addition, the kForth version of DNW's
machar.4th has been updated.
- 2003-04-19 Version 1.0.14-2 packages for Windows are
- 2003-04-19 A patch for version 1.0.14 is available to fix
a stack pointer problem with the word
See the updates and patches page.
- 2003-04-16 Version 1.0.14 is now available for Linux.
- 2003-02-17 Anton Ertl's
structures package and Bernd Paysan's
minimal object-oriented extensions for Forth
have been adapted for kForth. See the
programming examples page for the new files:
An updated version of
ans-words.4th is required for using the structures package.
- 2003-01-18 The Windows version of kForth has been
updated to version 1.0.13. It is available for download
(see below) in both executable and source code packages.
- 2002-10-21 The latest version of the
Portable Forth Environment
(PFE), version 0.32.93, includes the
module to provide an integrated floating point/data stack
implementation of the floating words. This module permits kForth
code which uses floating point words to be run under PFE. The
kforth2pfe.4th provides an interface to load kForth code under
- 2002-10-02 A new Linux version of kForth, version 1.0.13,
is available for download. It has been modified to build properly with
gcc 3.2. A few bug fixes have also been made.
- 2002-09-20 The following new Forth files are available:
speech.4th interface to the
Text To Speech program (freely available for Linux and Windows)
user.4th words to determine user properties on a Linux system
- 2002-05-01 A new version of the kforth documentation package
kforth-doc.zip is now available.
- 2002-?-? New versions of
and its Windows version
filesw.4th are available. These revisions fix a bug in the word
reposition-file and add the words
- 2002-?-? Updated version number scheme to more widely adopted
standard. The 2-10-2002 release is assigned version number 1.0.11. The
distribution filenames reflect this change. There is no
actual change to the file contents.
- 2002-?-? Several new programming examples for kForth have been
added. These include a version of Julian Noble's complex number
complex.4th and a version of Ed Beroset's animal guessing game
animal.4th. See the examples page
for more kForth programs.
- 2002-02-10 New versions of kForth for Linux and Windows
(95/98/NT/2000) are now available (10 February 2002). Please see the
revisions page for a list of
changes and bug fixes. Earlier releases are still available in the
- 2002-?-? A
paper on the non-ANS standard features implemented in kForth is now
available for download in pdf format.
- 2001-04-07 A new version of kForth for Windows (95/98/NT) is
available (7 April 2001).
- 2001-04-01 A new version of kForth for Linux is now available
(1 April 2001). Please see the revisions
page for a list of changes and bug fixes. The earlier
8 August 2000 release is still available in the
- 2001-02-16 The Windows (95/98/NT) version of kForth has been
rebuilt using the freely downloadable
Cygwin development tools.
Earlier versions, built with the Symantec C++ development
environment and the A386 assembler, are being phased out.
Use of the Cygwin tools will allow greater consistency
between the Linux and Windows code. Also, the freely available
development environment will allow many more users
to modify and rebuild the code. The latest kForth (Cygwin build)
for Windows 95/98/NT was posted on 16 February 2001.