@itemize
@item Aggregate targets and willing to be out-of-date ones just must not
produce empty output files. @command{apenwarr/*}, @command{redo-c} and
- @command{goredo} implementations consider non existing file as an
+ @command{goredo} implementations treat non existing file as an
out-of-date target
@item If you really wish to produce an empty target file, just touch @file{$3}
@end itemize
-Those who create an empty file if no @file{stdout} was written -- failed
-implementation.
+Those who create an empty file if no @file{stdout} was written -- are
+failed implementations.
redo is a tool to help people. Literally all targets can be safely
@code{redo-stamp < $3}-ed, reducing false positive out-of-dates. Of
necessary results in @file{$3}, instead of just silently feeding them in
@command{redo-stamp}.
-redo implementations are already automatically record -ifchange on
+redo implementations already automatically record -ifchange on
@file{.do} files and -ifcreate on non-existing @file{.do} files. So why
they can not record @command{redo-stamp} the same way implicitly? No,
-Zen of Python does not applicable there, because -ifchange/-ifcreate
-contradict it already.
+Zen of Python is not applicable there, because -ifchange/-ifcreate
+contradicts it already.
Modern cryptographic hash algorithms and CPUs are so fast, that even all
read and writes to or from hard drive arrays can be easily checksummed