Focused transactional state updates:
(%%=) :: Has (State s) sig m => Lens' s a -> StateC a m () -> m ()
lens %%= action = use lens >>= (`execState` action) >>= (lens .=)
e.g.:
_player %%= handleControls
Conversation
This Tweet is from a suspended account. Learn more
This Tweet is from a suspended account. Learn more
This Tweet is from a suspended account. Learn more
This Tweet is from a suspended account. Learn more
Was actually looking back at some of the Epigram stuff again recently - ie. "The View from the Left" and some of the old languages guides, and having a peek at the source code and examples of version 1 & 2. Would really be interested to know more about what you learned from it!

