Fix 80-column fixtures and tutorial expectations
Some checks failed
akbasic CI Build / cmake_build (push) Successful in 3m35s
akbasic CI Build / sanitizers (push) Successful in 4m40s
akbasic CI Build / coverage (push) Successful in 3m56s
akbasic CI Build / akgl_build (push) Has been cancelled
akbasic CI Build / mutation_test (push) Has been cancelled

This commit is contained in:
2026-08-04 16:14:04 -04:00
parent 1e514f679b
commit bd63e3e9fa
18 changed files with 42 additions and 41 deletions

View File

@@ -1,7 +1,7 @@
10 REM A leading zero is padding, not a radix. The reference selects base 8 for
20 REM any lexeme starting with 0, so 010 printed 8 and 08 was a parse error --
30 REM TODO.md section 6 item 10, fixed. Commodore BASIC has no octal literals.
40 REM 0x is the one prefix that changes the base, and it now reaches the scanner
10 REM A leading zero is padding, not a radix. The reference selected base 8
20 REM for lexemes starting with 0; 010 printed 8 and 08 was a parse error --
30 REM TODO.md section 6 item 10 is fixed; Commodore BASIC has no octal.
40 REM 0x is the one prefix that changes the base, and now reaches the scanner
50 REM whole: that was section 6 item 15.
60 PRINT 010
70 PRINT 08

View File

@@ -1,12 +1,12 @@
10 REM A truth value carries its payload in boolvalue, not floatval. The three
20 REM numeric operators were `if ( INTEGER ) ... else <treat as float>`, and
30 REM that else was a catch-all rather than a float branch -- so a truth value
30 REM that else was a catch-all, not a float branch -- so a truth value
40 REM on the LEFT computed 0 - 1 into a field nothing reads, kept its BOOLEAN
50 REM type, and printed `true` instead of -2. Silent, and wrong twice over.
60 A# = 1
70 PRINT (A# == 1)
80 REM On the RIGHT it stays legal and stays -1, which is the same property that
90 REM lets AND and OR double as logical operators. Refusing it here would have
80 REM On the RIGHT it stays legal and stays -1, the same property that
90 REM lets AND and OR act as logical operators. Refusing it would have
100 REM broken every condition in the language.
110 PRINT 5 - (A# == 1)
120 PRINT 5 * (A# == 1)