{"provider_url":"https://hatena.blog","author_name":"mbps","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fmbps.hatenablog.com%2Fentry%2F2014%2F05%2F04%2F132502\" title=\"Codensity monad - PS\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","provider_name":"Hatena Blog","categories":["\u570f\u8ad6","\u5b9a\u7fa9","Monad","Haskell"],"blog_title":"PS","url":"https://mbps.hatenablog.com/entry/2014/05/04/132502","image_url":"http://chart.apis.google.com/chart?cht=tx&chl=%20G%5C%20%3A%5C%20%5Cmathcal%7BC%7D%20%5Crightarrow%20%5Cmathcal%7BD%7D%20","version":"1.0","type":"rich","author_url":"https://blog.hatena.ne.jp/mbps/","published":"2014-05-04 13:25:02","title":"Codensity monad","description":"Codensity monad Functor: \u306b\u3064\u3044\u3066\u3001right Kan extension of along : \u304c\u5b58\u5728\u3059\u308b\u306a\u3089\u3070\u3001 *1 \u306f\u3001monad\u3092\u6210\u3059\u3002\u3053\u306emonad\u3092codensity monad of \u3068\u3044\u3046\u3002 Adjunction\u304b\u3089\u306ecodensity monad \u7279\u306b\u3001 \u304cleft adjoint: \u3092\u6301\u3064\u3068\u304d\u3001Adjunction lifting - PS\u306b\u3088\u308bright Kan extension of along : \u304b\u3089\u4f5c\u3063\u305fcodensity monad\u306f\u3001Adjunction\u304b\u3089\u306emonad - PS\u305d\u306e\u3082\u306e\u3067\u3042\u308b\u3002 Haskell\u306ecodensity \u2026","width":"100%","height":"190","blog_url":"https://mbps.hatenablog.com/"}