<< -package:lens

Put something inside an HTML element.
Precomposition with a pure function (right-to-left variant).
Concatenate two Chunks with a space in between. If one is empty, this just returns the other one. Unlike <+> for Doc, this operation has a unit element, namely the empty Chunk.
Concatenate two Chunks with a softline in between. This is exactly like <<+>>, but uses a softline instead of a space.
This is a version of (%~) which modifies the structure and returns it along with the old value:
>>> (1, 2) & _1 <<%~ negate
(1, (-1, 2))
Simpler type signatures:
(<<%~) ::             Lens s t a b      -> (a -> b) -> s -> (a, t)
(<<%~) :: Monoid a => Traversal s t a b -> (a -> b) -> s -> (a, t)
This is a version of (.~) which modifies the structure and returns it along with the old value:
>>> (1, 2) & _1 <<.~ 0
(1, (0, 2))
Simpler type signatures:
(<<.~) ::             Lens s t a b      -> b -> s -> (a, t)
(<<.~) :: Monoid a => Traversal s t a b -> b -> s -> (a, t)
Equivalent to (+>>) with the arguments flipped
a <. b ≡ const <$> a <.> b
extend in operator form
Alias for fmap . fmap. Convenient to work with two nested Functors.
>>> negate <<$>> Just [1,2,3]
Just [-1,-2,-3]
Modify the target of a Lens into your Monad's state by a user supplied function and return the old value that was replaced. When applied to a Traversal, this will return a monoidal summary of all of the old values present. When you do not need the result of the operation, (%=) is more flexible.
(<<%=) :: MonadState s m             => Lens' s a      -> (a -> a) -> m a
(<<%=) :: MonadState s m             => Iso' s a       -> (a -> a) -> m a
(<<%=) :: (MonadState s m, Monoid a) => Traversal' s a -> (a -> a) -> m a
(<<%=) :: MonadState s m => LensLike ((,)a) s s a b -> (a -> b) -> m a
Adjust the target of an IndexedLens returning the old value, or adjust all of the targets of an IndexedTraversal within the current state, and return a monoidal summary of the old values.
(<<%@=) :: MonadState s m                 => IndexedLens i s s a b      -> (i -> a -> b) -> m a
(<<%@=) :: (MonadState s m, Monoid b) => IndexedTraversal i s s a b -> (i -> a -> b) -> m a
Adjust the target of an IndexedLens returning the old value, or adjust all of the targets of an IndexedTraversal and return a monoidal summary of the old values along with the answer.
(<<%@~) ::             IndexedLens i s t a b      -> (i -> a -> b) -> s -> (a, t)
(<<%@~) :: Monoid a => IndexedTraversal i s t a b -> (i -> a -> b) -> s -> (a, t)