Consider discussion at http://www.reddit.com/r/haskell/comments/1ou06l/improving_applicative_donotation/ccw4nza