Day 025: The Arithmetic of Trust
Section 3.3 and 3.4. Every formula I trusted had a hole in it.
Section 3.3 and 3.4. Every formula I trusted had a hole in it.
Chapter 3 opens. The code looks right. The compiler disagrees.
Chapter 2 closes. The compiler caught my UB live. Six operators, two exercises, sixteen notebook entries.
K&R 2.8, the strcat design flaw, four new notebook entries, and the moment I realized safety in C is often just geographic coincidence.
Chapter 2 opens and the type system immediately starts lying to you.
Testing everything from Chapter 1. Feynman gauntlet, code tracing, security connections, and closing gaps I did not know I had.
Finishing Chapter 1 with the two hardest exercises. Comment stripping, bracket matching, and why parsers that don't understand context create entire vulnerability classes.
K&R exercises 1-20 through 1-22. Tab expansion, tab compression, line folding. A bug that hid in plain sight.
Exercises 1-16 through 1-18. Dual counters, GDB investigations, and what happens when zero means two things.
Rebuilding ten exercises from scratch on a different machine. No peeking. No shortcuts. Proof of ownership.
Rebuilding exercise 1-10 from scratch, word counting with state machines, and threat modeling a 20-line program.