Projects / 4tH compiler

4tH compiler

4tH is a Forth compiler with a little difference. Instead of the standard Forth engine it features a conventional compiler. 4tH is a very small compiler that can create bytecode, C-embeddable bytecode, standalone executables, but also works fine as a scripting language. It supports about 95% of the ANS Forth CORE wordset and features conditional compilation, pipes, files, assertions, forward declarations, enumerations, structures, suspended execution, recursion, include files, etc. It comes with an RPN calculator, line editor, preprocessor, compiler, decompiler, C-source generator, a virtual machine, and a multitasking environment.

Tags
Licenses
Operating Systems
Implementation

Tweet this project Short link

Rss Recent releases

  • Rrelease-mid
  •  28 Dec 2009 19:11
  • Rrelease-after

Changes: Version numbering was changed. The words 'RANDOM' and 'MAX-RAND' have been removed. The word 'RSHIFT' now performs a logical shift. The library files now support several 'state of the art' random number generators, simple hashtables, associative arrays, and strpbrk() and strchr() like words. A tail call optimizer was added to the compiler. A small BASIC interpreter was added to the examples.

Changes: The words '[/]' and '[SIGN]' have been added. The preprocessor was expanded and now takes the DIR4TH environment variable into account. The library files now support ANS Forth compatible versions of all floating point input and output words. The library file getenv.4th was rewritten. The library file row.4th was changed. A chapter on library dependencies was added to the manual.

Changes: A preprocessor was added. The multitasking environment was rewritten. Several ANS floating point bugs were fixed. Another floating point environment, called Zen float, was added. The Linux version now supports shared libraries. More complex patches are supported. Various other additions and fixes were made to the libraries and examples.

  • Rrelease-mid
  •  03 May 2009 14:25
  • Rrelease-after

Changes: Several bugs in the floating point library were fixed. The circular ring buffer library was rewritten. Many FSL and forth200x words were added to the library. The return value of "OPEN" was standardized. "AS" was removed. "ERROR?" and "BUFFER:" were added. The editor can now export text files. A classic "Startrek" program was added to the examples. New sections were added to the Development Guide.

Changes: A floating point emulation library was added, providing most words of the FLOATING and FLOATING EXT wordsets. A few bugs were fixed in the "mixed" library.

No-screenshot

Project Spotlight

Lunchbox

A dynamic tiling window manager for X11.

E5d026fc3cc0f6826f1fefba61d86113_thumb

Project Spotlight

Grub Next Generation

A distributed Web crawling system.