lina : a LInux NAtive Forth

You can download here release 5 of a 64-bit ISO Forth for Linux Intel. called lina64. See also the releasenotes for version 5, because at last some obsolete items have been removed. The latest stable release is 5.3 , its notes are appended to the above file. This is one of the Forth's that can be generated by the ciforth generic system at github: ciforth, computer intelligence Forth There still is the corresponding 32-bit ISO Forth for Linux Intel called plain lina. These are binary downloads, ready to run, with documentation ready to be viewed or printed. The binary has been generated by fasm, but the file included is in gas format, which is more canonical.
A stable beta release for Linux (2017 oct) is available in 32-bit and 64-bit . An important addition is a floating point package. The github archive for ciforth contains all corresponding source material, and a wiki.
release 4 version is still available, as this is still the version for programs published on this site, unless otherwise noted. . For previous releases 5 and 4 and still older versions you may search my FTP-site. In fig/eForth tradition it is based on an assembler in only one file, so no c-code is present nor are any c-libraries called.

Features, present in the archive:

If you want to modify and rebuild it from assembler source, for 32 bits you may use at your discretion the gas format, fasm or nasm. The excellent nasm assembler version .98 has been used to generate the binary in the distribution.
Since the gnu Intel assembler supports the directive .Intel_syntax prefix, which forces Intel's non-standard destination-source order of operands, it became feasible to supply a .s file that can be assembled on any system equipped with a gcc compiler. This too is supplied in the archive. Use the instructions contained in the file to assemble it. A long time the gas format was the only one that works for the 64 bits version. Now fasm is available and much preferred.
Use the generic system for more important changes.

Apart from above source and documentation, the wc program is included in this archive. The wc wordcount program is an example of how to use lina as a scripting language. The only environmental dependancy is using Linux system calls.
It has become a bit of a disgrace since the later version have much better facilities for scripting than this year 2000 example. It only works with version 4 lina's. It is kept as an example how easy scripting with a Forth can be, even though very primitive.

Experimental coloring version

You can also download the experimental (unstable) version called 4.1.22. It has a number of small improvements over the stable version. Most important, it allows color high lighting using the stack effect analyser and a drop-in replacement for the kernel: lina+a. It shows the words with color high lighting, as follows.
        lina+a -r
        "analyserconfig.frt" INCLUDED
        "color.frt" INCLUDED
The file smallanalyser.frt can be used to add the stack effect for new words. For more information see the supplied sources.

lina release 5, 64 bit version

New in release 5 is the 64 bit version. The 64-bit version is called lina64, such that it is possible to have the two versions installed at the same time. The 64 bit version has threading activated.

lina release 5 changes

Some substantial changes are made with respect to the introspective properties of the Forth, which in the end should make a good optimiser possible. Like in the above 4.22 snapshot version, a mechanism is in place to allow to derive (semi-)automatically the stack effect of words. On top of that there are numerous small improvements and additions to the library.
An important change is the rename of REQUIRE to WANT such that the Forth doesn't become incompatible with upcoming additions to the Forth standard. So the -r option is replaced by a -w option.
All code published on this site is still based on 4.0.6. It should run on a release 5 ciforth after WANT -legacy-. , but testing is still in progress.
Release 5.2 uses 64 bits system calls instead of 32 bits system calls. I thank mr. Ken Wilson for contributing code for 64 bit system calls and pointing out the problem in the first place.

There is a list of current defects . See also the list of defects of the generic system. .

This binary distribution is based on a generic Intel Forth system that is available too.

Go to the home page of Albert van der Horst