Library / Computational Thinking DPF
Jump to passage
In this reading

Link to current text

Published source confirmed at last check

Source changed 2026-10-03 02:22:15 UTC · snapshot created 2026-10-03 03:38:22 UTC · last check 2026-10-03 03:45:20 UTC

CMP.14:8 - Common Anti-Patterns and How to Avoid Them

Tempting moveFailureUseful repair
Compose isolated correctness resultsAnother component invalidates a locally established fact.Test the permitted interference against that fact.
Treat a read-modify-write statement as indivisibleInterleaving can lose an update.Construct or justify the required atomic operation.
Infer failure of the effect from a missing replyThe effect may have happened before the reply was lost.Identify the logical request and recover its result.
Infer eventual response from absence of a bad stateAll participants may keep waiting.Establish an enabled progression and its fairness conditions.
Assume each component progresses because the other doesThe circular assumptions may admit no first move.Derive progress from initial enabling and justified dependencies.
Hide a changed memory or crash model in an implementation detailThe former permitted executions no longer cover the implementation.Reconstruct the affected interaction and preservation argument.