Edit this page

herkforth source code management

There are a couple ways to keep track of your code changes in herkforth.

Firstly you can press SHIFT-S to bootstrap and save. This compiles a forth kernel and saves that, the dictionary, data, and source to a new ELF file. You will get some strange file names if you do this too many times.

Secondly you can export the sources to a bunch of ascii files. (See herkforth export source for details.)

There are a couple little scripts to help work with these files. One called ./changes shows you a universal diff of the differences between the files in the blocks/ directory and in the out/ directory. You can apply these changes to the blocks directory (where they can be used to build herkforth) with ./apply

Note: the ./changes and ./apply scripts ignore changes to variable values. This only seems to cause trouble when you add a new block with the new-block word. In this case you will have to make sure the change to num-blocks carries through to blocks/000.

There is a handy script ./t which attempts to run the most recent version of the source you have around, and clear out the clutter from previous versions. Note that it will delete forth? if any of the dependancies for building herkforth000 are changed.

If you make changes that you would like to see in the main version of herkforth contact Jason Woofenden

See Also

herkforth source

how herkforth works

herkforth docs

Edit this page · home ·