Haskell 镜头:光学应用程序,可以做纯和fmap?

Haskell 镜头:光学应用程序,可以做纯和fmap?,haskell,haskell-lens,Haskell,Haskell Lens,对于任何应用程序,是否有可以执行此操作的光学元件: -- Can be used as a Review to return into IO (theOptic # 5) >>= print -- Can be used as a Setter to modify items in a list [2, 3] & theOptic .~ 6 没有显示任何既是回顾又是设定者,所以我猜它目前可能不存在于镜头中。有可能创建它吗?带有s=t和a=b的棱柱可以用作查看,任意棱柱可以

对于任何
应用程序
,是否有可以执行此操作的光学元件:

-- Can be used as a Review to return into IO
(theOptic # 5) >>= print

-- Can be used as a Setter to modify items in a list
[2, 3] & theOptic .~ 6

没有显示任何既是<代码>回顾又是<代码>设定者,所以我猜它目前可能不存在于镜头中。有可能创建它吗?

带有
s=t
a=b
的棱柱可以用作
查看
,任意棱柱可以用作
设置器
,所以
Prism's a=Prism s a a
可能就是你要找的?游戏玩家如果它是
Prism
,那么它将允许从
IO
获取物品。你正在寻找一个较弱的替代品,它正好支持
fmap