TclForth - A multi-platform Forth based on Tcl/Tk

TclForth uses Tcl as its native language. The Forth code and colon words are compiled to Tcl procedures that pass arguments and results on a stack. The stack items are handled as local variables. Forth and Tcl procedures coexist in the Tcl namespace and are all taken care of by the Tcl runtime system. Thus, the Tcl bytecode interpreter is also the inner interpreter of Forth. For details see the page in the Tcl-Wiki.

I have built applications with TclForth for a while and released it as an open source project - now updated to V0.7.0. The system is prepared as self-contained double-click executables for Windows and OS-X and as a set of source files for Tcl in Linux and elsewhere. Installation = unzip. TclForth programs run unchanged in Windows, OS-X, Linux, and more. Get it at GitHub.

TclForth Features

Always compile

Command line is compile and execute. Thus compiler words are working.
Like all interpreter languages besides Forth.

Global namespace

Unique names. No confusion with vocabularies and wordlists. Eliminates ONLY ALSO ...

Substitute code

Also in working code, change a running program. This is a feature of Tcl. But also works in Forth, ex. Holon86 ff.

Stack arguments are (handled as) local variables

The stack is mainly used for argument transfer. But access it inside word code if you prefer.

Units do their own business. Actors.

The interpreter passes control to the units (words or commands) to execute or compile themselves.

Rich data elements implemented as objecttypes

The illustrated chess-moves-game was published in the Tcl'ers Wiki. I converted it to TclForth as a fun non-trivial test and proof of concept. The game is included in the release.