Out of the Tar Pit Flashcards
The system must retain input data when ___
there is a possibility that the system may be require to refer to it in the future.
Input data corresponds to ___ state.
essential
In the ideal world, control ___.
can be completely omitted
In the ideal world, concurrency is ___ state.
accidental
In the ideal world, concurrency is considered accidental because ___.
finite computations take zero time, regardless of parallel or sequential ordering
Two cases to consider regarding input data:
- There exists a possibility the system may be required to refer to the data in the future.
- There is no such possibility.
In the ideal world, control is ___ state.
accidental
In the ideal world, ___ should not appear in the formal requirements.
control
Control should not appear in the ideal world’s formal requirements because ___.
they are derived with no consideration of execution
It is recommended to avoid ___ in a system.
Accidental Useless Complexity (state / control)
It is recommended to separate ___, ___, and ___ in a system.
Essential Logic
Essential Complexity (state)
Accidental Useful Complexity (state / control)
Definition: Referential Transparency
When supplied with a given set of arguments, a function will always return exactly the same result.
In the ideal world, all state in the system is visible to the user because ___.
inputs can reasonably be expected to be visible in ways that internal cached state is not
Referential transparency guarantees elimination of one weakness of testing: ___
a system that is in one state reveals nothing about its behaviour in a different state
Because the ideal world removes all non-essential state, ___.
all the state in the system is visible to the user
Derived data is either ___ or ___.
immutable
mutable