instance Monoid a => Monoid (Q a)
This instance would allow writing:
foldMap makeLenses [ ''Foo, ''Bar ]
The definition is trivial:
instance Semigroup a => Semigroup (Q a) where
(<>) = liftA2 (<>)
instance Monoid a => Monoid (Q a) where
mempty = pure mempty