refactor(truth-table): translate Estonian names and add regression harness
authorSvjatoslav Agejenko <svjatoslav@svjatoslav.eu>
Sat, 26 Sep 2026 12:38:26 +0000 (15:38 +0300)
committerSvjatoslav Agejenko <svjatoslav@svjatoslav.eu>
Sat, 26 Sep 2026 12:38:26 +0000 (15:38 +0300)
commitf962e1d2160c3a87914a8d1253bf77a65520f294
treeb4ba5b1aa18bc6fcd7528f65d3253f264ddd7ad8
parent1e28b881a429741bc5c4b8c816d13ed80869f914
refactor(truth-table): translate Estonian names and add regression harness

- truth.bas: second readability pass — translate remaining Estonian
  identifiers (sist/lahend/tee/teeslg/lend/mov, tehl/nm/muu/prnp) into
  descriptive English, add per-SUB description headers, document the
  operator encoding (CHR$(1..5), t/v as tosi/vaar constants) and mark
  the dead 2002-era code (removeRedundancies, drainKeyboardBuffer,
  xlahn). Algorithm, labels and GOTOs unchanged.
- Tests/: GameDriver-based regression harness — drives the program in
  crtbasic for 19 formulas, verifies truth columns against an
  independent Python oracle and byte-diffs full 8x8-cell text dumps
  against the baselines in expected/. Validated pixel-identical
  against real QB45 in DOSBox.
22 files changed:
Math/Truth table/Tests/expected/and.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/chain-4var.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/constants.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/double-not.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/equiv-chain.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/equiv.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/example.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/five-var.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/implies-chain.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/implies.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/mixed-andor.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/nested-parens.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/not-and.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/not-implies.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/not-in-parens.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/not-paren-and.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/not.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/or.txt [new file with mode: 0644]
Math/Truth table/Tests/expected/repeated-var.txt [new file with mode: 0644]
Math/Truth table/Tests/formulas.txt [new file with mode: 0644]
Math/Truth table/Tests/run_tests.py [new file with mode: 0644]
Math/Truth table/truth.bas