6
data Foo = Foo {
  _bar :: Map String Integer
} deriving (Eq, Ord, Read, Show, Data, Typeable)

$(deriveSafeCopy 0 'base 'Foo)

$(makeLenses ''Foo)

上記のコードを考えると、これを行うことができるはずだという印象を受けています。

addEntry :: String -> Update Foo ()
addEntry s = zoom bar $ modify $ insert s 0

しかし、GHC は次のように文句を言います。

src/Backend.hs:39:20:
    No instance for (Functor
                       (Control.Lens.Internal.Zoom.Zoomed (Update Foo) ()))

何か案は?

4

1 に答える 1