Daniel Fischer wrote: > sat p = try $ do > (t,pos) <- item > if p t then return (t,pos) else pzero > > and you're all set (you don't need the try's in atom, then). > Thanks, that works! E.