haskell-jp / beginners #18 at 2021-10-04 08:34:21 +0900

math に投げるか迷ったのですがこちらで。
Lensってありますよね、getterとsetterがあるという認識なのですが、これらの概念は、圏論的にはどのようなものとして説明されるのでしょうか?
もしよろしければ、お教えいただけると幸いです。
圏論はよく知らないので詳細な解説はできませんがこちらをどうぞ https://gist.github.com/lotz84/7fd7e279bd7196c6baab
ありがとうございます。読んでみようと思います。毎回お世話になっております。
Lensはgetter, setterの考え方からボトムアップに作られてきた概念なので圏論的なLens(optics)と言われるものにもいくつか種類があるんですが、
igrepさんが挙げてくれたものに加えて、
4変数の場合である van Laarhoven lens とその圏論的なモデルは以下の記事が分かりやすかったです:eyes:
https://bartoszmilewski.com/2015/07/13/from-lenses-to-yoneda-embedding/
あと最近はProfunctor Opticsというのもあります(色んなOpticsが統一できて、Profunctor間の射として表現できるという性質を持っている興味深い対象です)
https://arxiv.org/abs/2001.07488
他にもこれらの考え方で統一できないLensの亜種がちらほらあるイメージです:eyes:
なるほど……ありがとうございます。
理解できるように努めたいと思います。
毎回ありがとうございます。