I hereby claim:
- I am gmorpheme on github.
- I am gmorpheme (https://keybase.io/gmorpheme) on keybase.
- I have a public key ASD6meSaRAfAHUSUwt_AfFZ4fq7G6mnkqb0QoQRqBTezbAo
To claim this, I am signing this object:
aws ec2 describe-regions | eu |
I hereby claim:
To claim this, I am signing this object:
(ns ^{:doc "Loose translation of evaluator from chapter three | |
of Lisp in Small Pieces into Clojure."} | |
lispic.chapter3.cont | |
(:refer-clojure :exclude [invoke]) | |
(:require [clojure.test :refer [deftest is]])) | |
(declare evaluate wrong) | |
(defn wrong [& args] | |
(println args) |
(ns ^{:doc "The lisp_3 evaluator from ch2 of Lisp in Small Pieces"} | |
lisp.chapter2.lisp3 | |
(:refer-clojure :exclude [extend])) | |
(defn wrong [& msgs] | |
(throw (RuntimeException. (apply str (interpose " " msgs))))) | |
(defprotocol IEnvironment | |
(lookup [_ k] | |
"Retrieve value of k in environment.")) |
(ns ^{:doc "Evaluator from ch1 of lisp in small pieces. Warning: | |
NON-IDIOMATIC clojure!"} | |
lisp.chapter1.eval | |
(:refer-clojure :exclude [extend])) | |
(defn wrong [& msgs] | |
(throw (RuntimeException. (apply str msgs)))) | |
;; -- runtime support, environments are represented as a seq of pairs, | |
;; -- stored in an atom. Non-idiomatic but faithful to the book. |