People get confused when language implementations break language guarantees

125 · Hillel Wayne · April 21, 2026, 6:55 p.m.
Summary
This blog post discusses the confusion caused by language implementations that break their guarantees, specifically contrasting Python and TLA+. It explains how the changes in state and variable updates can lead to unexpected results and highlights the differences in semantics between languages. The author notes that while TLA+ aims for nonordering, practical implementation by model checkers like TLC can lead to confusion. The post is a reflection on the complexities and quirks of declarative languages and their implementations.