On Tue, Apr 29, 2014 at 09:36:00AM +0200, Daniel Trstenjak wrote: > go !x m | cond x = go (inc x, m >> f x) Obviously I'm programming too much C, it should be: go !x m | cond x = go (inc x) (m >> f x)