瀏覽代碼

slightly prettier closure representation.

Lucas Stadler 11 年之前
父節點
當前提交
3aa27227e4
共有 1 個文件被更改,包括 2 次插入2 次删除
  1. 2 2
      scm/evalo.scm

+ 2 - 2
scm/evalo.scm

37
        (evalmanyo els env val))]
37
        (evalmanyo els env val))]
38
     [(fresh (x body)
38
     [(fresh (x body)
39
        (== `(lambda (,x) ,body) expr)
39
        (== `(lambda (,x) ,body) expr)
40
        (== `(closure ,x ,body ,env) val))]
40
        (== `(,expr in ,env) val))]
41
     [(fresh (e1 e2 x body env^ arg)
41
     [(fresh (e1 e2 x body env^ arg)
42
        (== `(,e1 ,e2) expr)
42
        (== `(,e1 ,e2) expr)
43
        (evalo e1 env `(closure ,x ,body ,env^))
43
        (evalo e1 env `((lambda (,x) ,body) in ,env^))
44
        (evalo e2 env arg)
44
        (evalo e2 env arg)
45
        (evalo body `((,x . ,arg) . ,env^) val))])))
45
        (evalo body `((,x . ,arg) . ,env^) val))])))