相关疑难解决方法(0)

Clojure源中的父级评估(阅读器)功能?

Peter Norvig的史诗第7章" 人工智能编程范式"中,他描述了一个函数interp,它实际上是eval一个在REPL中解释一个简单的方案时使用的简单函数.

(defun interp (x &optional env)
  "Interpret (evaluate) the expression x in the environment env."
  (cond
    ((symbolp x) (get-var x env))
    ((atom x) x)
    ((case (first x)
       (QUOTE  (second x))
       (BEGIN  (last1 (mapcar #'(lambda (y) (interp y env))
                              (rest x))))
       (SET!   (set-var! (second x) (interp (third x) env) env))
       (IF     (if (interp (second x) env)
                   (interp (third x) env)
                   (interp (fourth x) env)))
       (LAMBDA (let ((parms (second x))
                     (code (maybe-add 'begin …
Run Code Online (Sandbox Code Playgroud)

scheme eval clojure

5
推荐指数
1
解决办法
374
查看次数

标签 统计

clojure ×1

eval ×1

scheme ×1