HaskellでLens
をやっている。
Lens
とは、タプルやリストやレコードに対しgetterやsetterを提供するものだ。
参考記事:
リストのリストに対してsetするのは、以下みたいだ。
Microsoft Windows [Version 10.0.17134.706] (c) 2018 Microsoft Corporation. All rights reserved. C:\me\Haskell>stack install lens --resolver lts Selected resolver: lts-13.23 C:\me\Haskell>stack exec ghci --resolver lts Selected resolver: lts-13.23 GHCi, version 8.6.5: http://www.haskell.org/ghc/ :? for help Prelude> :m Control.Lens Control.Arrow Prelude Control.Lens Control.Arrow> [[1,2,3],[4,5,6],[7,8,9]] & (ix 0 <<< ix 1) .~ 55 [[1,55,3],[4,5,6],[7,8,9]] Prelude Control.Lens Control.Arrow>
.
.