scalaz/scalaz-stream — pull request #242 by fthomas (2014-09-22 15:48:40+00:00)
Title: Implement distinctConsecutiveBy in terms of filterBy2

I realized that `distinctConsecutiveBy` can be implemented in terms of a more generic function by abstracting over the predicate that compares consecutive elements. I extracted this function as `filterBy2`. The predicate that is given to this function uses the previously emitted and current elements.

Here is a simple example:
```scala
Process(1, 1, 3, 2, 5, 4).filterBy2(_ < _).toList == List(1, 3, 5)
```