Действительно простой вопрос здесь. После просмотра отличного введения в линзы:
http://www.youtube.com/watch?v=efv0SQNde5Q
Я подумал, что могу попробовать один из простых примеров, описанных в разговоре:
import scalaz.Lens._
fst.andThen(snd).set(((1,2),3),9)
за этим последовала эта ошибка
error: type mismatch;
found : scalaz.Lens[(Nothing, Nothing),Nothing]
required: scalaz.Lens[(Nothing, Nothing),C]
Note: Nothing <: C, but class Lens is invariant in type B.
You may wish to define B as +B instead. (SLS 4.5)
fst.andThen(snd).set(((1,2),3))
^
Любые идеи о том, как сделать эту работу?