weird name. Looks like foldr. How about andThen?