Here we try to document ack's design, including design decisions that have already been made, so that we don't keep rehashing them.
-
ack will not do replacing of text. It is not a replacement for sed.
-
ack will only use core Perl modules and File::Next. No other modules may be required.
-
ack must be able to be built as a single-file standalone file.
-
ack must be cross-platform. Specifically, it must run on Windows.
It seems not. Brian M. Carlson investigated this and reported his findings here: beyondgrep#398
There seemed to be no effect.
No. Sorting the filenames requires reading in the entire directory of filenames before searching, and this can be a performance hit. In fact, it can kill ack entirely on directories with absurdly large numbers of files in them.
The Perl toolchain takes care of the shebang at install time.