{-# OPTIONS_GHC -fplugin=RecordDotPreprocessor #-}
data Foo = Foo { bar :: Int }

mfoo = fmap (.bar)   $ Nothing

bar = (  Foo 1).bar

fooplus f n = f{foo = f.bar + n}

fooplus' f n = f { foo = f.bar + n}

fooplus'' f n = f {foo = f.bar + n}

fooplus''' f n = f{ foo = f.bar + n}
