The header scan (Captain Bob, 2026-11-10): 788 source files -- 351 with the
SL-1.0 header, 12 with the old name (docs/working/experiments, kept by
ruling), 31 under someone else's licence (tools/kconfig, Linux's, GPL-2.0:
kept), and 394 with none. Ruled: the SPDX form; capsules (.4th, .f18) and
proofs (.thy) left for a ruling of their own (mkcapsule's 64x16 block format,
content-addressed capsules).
253 files now begin
SPDX-License-Identifier: LicenseRef-Starship-1.0
Copyright (c) 2023-2026 Robert A. James
as a /* */ block (C, headers, assembly, linker scripts) or # lines (scripts,
Makefiles, Kconfig; below a shebang or a coding line); tools/mkcapsule.c,
which had the copyright line, gets the SPDX line only.
Not touched: docs/working/ (archive and old campaign material, as the
ruling kept the experiments); v4/system/post_cases.c (generated by
v4/tools/mkpost.py, "do not edit" -- the generator has the header).
Comments only: the kernel builds on amd64, aarch64, riscv64; make -C v4
test-32: 39 programs, 0 failures; every changed script parses.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GE3SDvQn5EoxdGufk84zz2
src/word_source/
FORTH-79 word implementations, one file per category, registered into the
dictionary via include/word_registry.h. Each .c file here has a
matching header in src/word_source/include/ and (for most categories) a
matching test module in src/test_runner/modules/.
FORTH-79 core
arithmetic_words.c,mixed_arithmetic_words.c—+ - * / MOD ABS MIN MAXand mixed-precision arithmetic.stack_words.c—DUP DROP SWAP ROT OVER NIP TUCK.control_words.c—IF ELSE THEN DO LOOP BEGIN UNTIL WHILE.defining_words.c—: ; CREATE DOES> VARIABLE CONSTANT.memory_words.c—@ ! C@ C! MOVE FILL.return_stack_words.c—>R R> R@ RDROP 2>R 2R@ 2R>.double_words.c—2DUP 2DROP 2SWAP 2@ 2! D+ D-.logical_words.c—AND OR XOR NOT INVERT LSHIFT RSHIFT.io_words.c—EMIT KEY TYPE CR TAB SPACE ACCEPT.string_words.c—S" SLITERALand other string operations.block_words.c—BLOCK BUFFER LOAD THRU FLUSH.format_words.c—.( .R .S HEX DECIMAL BASE.system_words.c—BYE ABORT INCLUDE STATE.dictionary_words.c—FIND SEARCH-WORDLIST WORDS.dictionary_manipulation_words.c— dictionary entry manipulation words.vocabulary_words.c—VOCABULARY DEFINITIONS FORTH-WORDLIST.editor_words.c— block editor words.defer_words.c—DEFER/ISdeferred-word mechanism, used by the Tripod message-dispatch shim (seetools/hermes_tripod_smoke.sh).
StarForth-specific extensions
q48_16_words.c,q48_words.c— Q48.16 fixed-point word bindings.starforth_words.c— StarForth-specific extensions.acl_words.c— word-level ACL system's FORTH-callable primitives (seedocs/reference/word-acl/).lifecycle_words_hosted.c— hosted-build VM lifecycle words (birth/run primitives on the hosted side; kernel-only primitives live insrc/starkernel/capsule/mama_forth_words.c).log_words.c— FORTH-callable logging primitives.inference_words.c— FORTH-callable bindings for the statistical inference engine (Loops #5/#6).physics_benchmark_words.c— benchmark harness for the 7 physics feedback loops.physics_diagnostic_words.c— physics diagnostics (WORD-ENTROPY).physics_freeze_words.c—PHYSICS-FREEZE/PHYSICS-THAW.physics_pipelining_diagnostic_words.c— Loop #4 pipelining diagnostics.dictionary_heat_diagnostic_words.c— Loop #1 heat diagnostics.
See src/word_source/include/ for the matching headers (also includes
mama_forth_words.h, whose .c implementation lives under
src/starkernel/capsule/ since it's kernel-only).