3.2  Runtime options

After successful compilation a C source-file is generated and can be compiled with a C compiler. Executables generated with CHICKEN (and the compiler itself) accept a small set of runtime options:

-:?
Shows a list of the available runtime options and exits the program.

-:c
Forces console mode. Currently this is only used in the interpreter (csi) to force output of the >>> prompt even if stdin is not a terminal (for example if running in an emacs buffer under Windows).

-:d
Prints some debug-information during startup.

-:hNUMBER
Specifies fixed heap size

-:hiNUMBER
Specifies the initial heap size

-:hgPERCENTAGE
Sets the growth rate of the heap in percent. If the heap is exhausted, then it will grow by PERCENTAGE. The default is 200.

-:hsPERCENTAGE
Sets the shrink rate of the heap in percent. If no more than a quarter of PERCENTAGE of the heap is used, then it will shrink to PERCENTAGE. The default is 50. Note: If you want to make sure that the heap never shrinks, specify a value of 0. (this can be useful in situations where an optimal heap-size is known in advance).

-:sNUMBER
Specifies stack size

-:tNUMBER
Specifies symbol table size

-:w
Enables garbage collection of unused symbols. By default unused and unbound symbols are not garbage collected.

-:r
Writes trace output to stdout. This option has no effect with in files compiled with the -no-trace or -debug-level 0 options.

The argument values may be given in bytes, in kilobytes (suffixed with K or k) or in megabytes suffixed with M or m). Runtime options may be combined, like -:dc, but everything following a NUMBER argument is ignored. So -:wh64m is OK, but -:h64mw will not enable GC of unused symbols.