{"html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fmzp.hatenadiary.org%2Fentry%2F20070625%2Fmlisp\" title=\"Lisp\u30a4\u30f3\u30bf\u30d7\u30ea\u30bf(2) - \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>","description":"\u3067\u30fc\u304d\u30fc\u305f\u30fc\u3002 Main >run \"(begin (define fact (lambda(x) (if (= x 0) 1 (* x (fact (- x 1)))))) (fact 10))\" 3628800 \u8907\u6570\u306e\u5f0f\u306e\u8a55\u4fa1\u306b\u306f\u3001\u307e\u305f\u5bfe\u5fdc\u3057\u3066\u3044\u306a\u3044\u3051\u308c\u3069\u3001\u3061\u3083\u3093\u3068\u968e\u4e57\u3082\u8a08\u7b97\u3067\u304d\u308b\u3002\u3067\u3001 lispEq (x:y:[]) env = let (x',env') = eval x env in let (y',env'') = eval y env' in (Bool (x' == y'),env'') \u3068\u304b\u304b\u3089\u3001State\u30e2\u30ca\u30c9\u3092\u4f7f\u3046\u3079\u304d\u306b\u304a\u3044\u304c\u30d7\u30f3\u30d7\u30f3\u3057\u3066\u308b\u306e\u3067\u3042\u3068\u3067\u66f8\u304d\u76f4\u305d\u3046\u3002","provider_name":"Hatena Blog","title":"Lisp\u30a4\u30f3\u30bf\u30d7\u30ea\u30bf(2)","version":"1.0","provider_url":"https://hatena.blog","image_url":null,"height":"190","categories":["Lisp","Haskell"],"type":"rich","url":"https://mzp.hatenadiary.org/entry/20070625/mlisp","blog_title":"\u307f\u305a\u3074\u30fc\u65e5\u8a18","author_name":"mzp","published":"2007-06-25 00:00:01","width":"100%","author_url":"https://blog.hatena.ne.jp/mzp/","blog_url":"https://mzp.hatenadiary.org/"}