Filter package:greskell
WalkType for filtering steps.
A filtering step is a step that does filtering only. It takes input
and emits some of them without any modification, reordering, traversal
actions, or side-effects. Filtering decision must be solely based on
each element.
A
Walk w is
Filter type iff:
(gSideEffect w == gIdentity) AND (gFilter w == w)
If
Walks
w1 and
w2 are
Filter type,
then
gAnd [w1, w2] == w1 >>> w2 == w2 >>> w1
.filter step that takes a traversal.