module Repr.Interpret ( evalMany, evalManyOn, ) where import Data.Foldable import Deck.Diff evalMany :: (Traversable t, DeckSYM m) => t (m (DeckRep m) -> m (DeckRep m)) -> m (DeckRep m) evalMany = flip evalManyOn empty evalManyOn :: (Traversable t, DeckSYM m) => t (m (DeckRep m) -> m (DeckRep m)) -> m (DeckRep m) -> m (DeckRep m) evalManyOn = flip (foldl' (\acc f -> f acc))