Tab-completion is somewhat obnoxious in directories with lots of files sharing a common prefix, for example.
Also, if you accidentally tab-complete the same file for output and input, depending on how clever the program is, you may end up deleting the source file.