The filter paradigm is a concept that takes this form: the application takes its input, massages it, and outputs the data. Under Unix, this concept, paired with [pipeline]s, allows one to build bigger tools by combinding filters to create new tools. For instance, one might build a sequence like this: grep MyName logfile | sort -u -f | wc -l which reads logfile, producing on [stdout] only those lines containing the string MyName. This output is passed, in parallel (on Unix anyways), to the [stdin] of a command to sort the resulting lines, writing to its stdout lines which differ from one another (all lines identical without regard to upper or lower case are collapsed into one copy of the line). The stdout of the sort are then passed, in parallel, to the stdin of a filter that counts the number of lines and outputs the total. ---- [Tcl]'s simple syntax for reading and writing to stdin and stdout makes it fairly easy to write these types of programs.