{"categories":["Haskell","Parsec"],"type":"rich","version":"1.0","published":"2010-07-29 14:07:01","width":"100%","title":"Parsec\u3067\u7c21\u5358\u306a\u96fb\u5353\u3092\u4f5c\u3063\u3066\u307f\u305f","author_url":"https://blog.hatena.ne.jp/fjnl/","image_url":null,"html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Ffjnl.hatenadiary.org%2Fentry%2F20100729%2F1280380021\" title=\"Parsec\u3067\u7c21\u5358\u306a\u96fb\u5353\u3092\u4f5c\u3063\u3066\u307f\u305f - fjnl\u306e\u751f\u5b58\u8a18\u9332\u306e\u3088\u3046\u306a\u4f55\u304b\" 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","description":"LanguageDef \u3068 TokenParser \u3068 ExpressionParser \u3092\u4f7f\u3063\u3066\u307f\u305f\u304b\u3063\u305f\u306e\u3067\u3002\u3002\u3002\u7a7a\u767d\u306e\u6271\u3044\u306b\u3064\u3044\u3066\u3001\u3054\u3061\u3083\u3054\u3061\u3083\u66f8\u304f\u5fc5\u8981\u304c\u306a\u304f\u3066\u697d\u3067\u3044\u3044\u3067\u3059\u306d\u3002 module Main (main) where import Text.ParserCombinators.Parsec as Parsec import qualified Text.ParserCombinators.Parsec.Token as Token import qualified Text.ParserCombinators.Parsec.Language as Lang import qua\u2026","provider_name":"Hatena Blog","author_name":"fjnl","blog_title":"fjnl\u306e\u751f\u5b58\u8a18\u9332\u306e\u3088\u3046\u306a\u4f55\u304b","height":"190","url":"https://fjnl.hatenadiary.org/entry/20100729/1280380021","blog_url":"https://fjnl.hatenadiary.org/"}