bimap f g ≡ first f . second g
>>> bimap toUpper (+1) ('j', 3) ('J',4)
>>> bimap toUpper (+1) (Left 'j') Left 'J'
>>> bimap toUpper (+1) (Right 3) Right 4
bimapping :: Bifunctor p => Iso s t a b -> Iso s' t' a' b' -> Iso (p s s') (p t t') (p a a') (p b b') bimapping :: Bifunctor p => Iso' s a -> Iso' s' a' -> Iso' (p s s') (p a a')