Gemäß den gewählten Filtern wird bei jedem Aufruf der nächste passende Eintrag zurückgegeben.
Ein Großteil der Filterung wird durch einen eval-Aufruf des Programmcodes, der bereits beim Start erstellt wird (s.o.), bewerkstelligt. Somit läßt sich eine große Schleife einsparen, die für jede einzelne Zeile überprüfen müßte, welche Filter überhaupt angewendet werden. Ausserdem ist die Implementierung von regulären Ausdrücken auf diese Weise ohne jeglichen Aufwand möglich.
Bei -bytes, -date und -time können anstelle eines einzelnen Wertes auch Bereiche (von-bis) angegeben werden. Der entsprechende Programmteil ist sehr umfangreich und wurde deswegen nicht als Programmstring implementiert.