The list above derives mostly from the BSD utility set, which is our target emulation distribution. Each page references the BSD manpage as a baseline, and when applicable, the original Version 7 documentation for the command as well. This doesn't mean that one must eschew adding things that would be natural in Perl, such as perhaps a wc -p that counts paragraphs, or a grep command that handles Perl regular expressions. But it's better to add a new command than a bunch of ugly options. History is important.
Standards are important.
But simplicity is paramount. Follow classic, simple behaviour. Avoid long options. Don't load modules you don't have to, but do so if it makes it more portable. For a more recent take on these principles of Simplicity , Clarity , and Generality , see The Practice of Programming .