Process data iteratively - Similar to Unix pipes for grep
Makes use of regular expressions to serach files for text patterns. Reads from a file to search folders/ directories.
Processing speed leaves much to be desired, but takes very little memory as each file is part of an iterator and then discarded.