if single-letter names are used:
single-letter variables are acceptable when structure dominates over data. alphabetical ordering encodes minimal ordering information and reduces semantic collision.
extending a contract is a structural operation; adding defensive code is not. when invalid states are excluded by design, checks only add noise and execution cost.
basic tests act as execution sentinels. detailed tests encode semantic assumptions. separation reduces maintenance cost and supports automated refactoring.
early declaration matches actual stack allocation and provides a complete view of storage. late declaration does not correspond to runtime behavior in c.
functional representations avoid hidden mutation and order dependence, making them suitable as canonical descriptions from which other forms are derived.
external conventions not enforced by the language often add complexity without compensating expressive power.