From ea81a8087bcd7953b083a2be9db447f75e7ebf56 Mon Sep 17 00:00:00 2001 From: Joel Martin Date: Wed, 2 Apr 2014 22:23:37 -0500 Subject: All: split types into types, env, printer, core. - types: low-level mapping to the implementation language. - core: functions on types that are exposed directly to mal. - printer: implementation called by pr-str, str, prn, println. - env: the environment implementation - Also, unindent all TCO while loops so that the diff of step4 and step5 are minimized. --- clojure/src/step2_eval.clj | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'clojure/src/step2_eval.clj') diff --git a/clojure/src/step2_eval.clj b/clojure/src/step2_eval.clj index 6ff9eb3..581bf3f 100644 --- a/clojure/src/step2_eval.clj +++ b/clojure/src/step2_eval.clj @@ -1,10 +1,8 @@ (ns step2-eval (:require [clojure.repl] - [types] [readline] - [reader])) - -(declare EVAL) + [reader] + [printer])) ;; read (defn READ [& [strng]] @@ -12,6 +10,7 @@ (reader/read-string strng))) ;; eval +(declare EVAL) (defn eval-ast [ast env] (cond (symbol? ast) (or (get env ast) -- cgit v1.2.3