{"description":"\u306a\u3093\u3067\u3053\u308c\u304c\u30a8\u30e9\u30fc\u306b\u306a\u308b\u306e\u304b\u308f\u304b\u3089\u306a\u3044\u306e\u306f\u3001\u307e\u3060\u306a\u306b\u304b\u7406\u89e3\u51fa\u6765\u3066\u3044\u3053\u3068\u304c\u3042\u308b\u3063\u3066\u3053\u3068\u306a\u3093\u3060\u308d\u3046\u306a\u3002 class Foo a where foobar :: (Bar b) => a -> b class Bar a newtype AFoo = MakeAFoo {foo_value :: Int} newtype ABar = MakeABar {bar_value :: Int} instance Foo AFoo where foobar x = MakeABar $ foo_value x instance Bar ABar Couldn't match expected type `\u2026","blog_url":"https://nishiohirokazu.hatenadiary.org/","width":"100%","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fnishiohirokazu.hatenadiary.org%2Fentry%2F20100517%2F1274105783\" title=\" ... is a rigid type variable bound by ... - \u897f\u5c3e\u6cf0\u548c\u306e\u306f\u3066\u306a\u30c0\u30a4\u30a2\u30ea\u30fc\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","provider_url":"https://hatena.blog","type":"rich","categories":["Haskell"],"author_name":"nishiohirokazu","title":" ... is a rigid type variable bound by ...","blog_title":"\u897f\u5c3e\u6cf0\u548c\u306e\u306f\u3066\u306a\u30c0\u30a4\u30a2\u30ea\u30fc","published":"2010-05-17 23:16:23","url":"https://nishiohirokazu.hatenadiary.org/entry/20100517/1274105783","height":"190","image_url":null,"provider_name":"Hatena Blog","author_url":"https://blog.hatena.ne.jp/nishiohirokazu/","version":"1.0"}