>>> toList $ mapMaybe (\x -> if odd x then Just x else Nothing) (source [0..10]) :: [Int] [1,3,5,7,9]
>>> mapMaybe (\x -> if odd x then Just x else Nothing) (source [0..2]) :: SourceT Identity Int fromStepT (Effect (Identity (Skip (Yield 1 (Skip Stop)))))Illustrates why we need Skip.