{"description":"30\u5206\u30d7\u30ed\u30b0\u30e9\u30e0\u3001\u305d\u306e63\u3002 OCaml\u306eStream\u3067\u30d1\u30fc\u30b5\u3092\u66f8\u3044\u3066\u307f\u308b\u3002 # parse_string \"1\";; - : s_exp = Num 1 # parse_string \"+\";; - : s_exp = Op \"+\" # parse_string \"(+ 1 3)\";; - : s_exp = List [Op \"+\"; Num 1; Num 3]#load \"camlp4o.cma\";; open Genlex;; let ($) f g = f g;; type s_exp = Num of int | Op of string | List of s_exp list;\u2026","version":"1.0","image_url":null,"url":"https://mzp.hatenadiary.org/entry/20070623/sexp","author_name":"mzp","published":"2007-06-23 00:00:00","width":"100%","height":"190","title":"S\u5f0f\u30d1\u30fc\u30b5","blog_url":"https://mzp.hatenadiary.org/","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fmzp.hatenadiary.org%2Fentry%2F20070623%2Fsexp\" title=\"S\u5f0f\u30d1\u30fc\u30b5 - \u307f\u305a\u3074\u30fc\u65e5\u8a18\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","categories":["OCaml","30\u5206\u30d7\u30ed\u30b0\u30e9\u30e0"],"author_url":"https://blog.hatena.ne.jp/mzp/","provider_name":"Hatena Blog","provider_url":"https://hatena.blog","blog_title":"\u307f\u305a\u3074\u30fc\u65e5\u8a18","type":"rich"}