Skip to content

Instantly share code, notes, and snippets.

@zmaril
Created July 19, 2013 14:39
Show Gist options
  • Save zmaril/6039575 to your computer and use it in GitHub Desktop.
Save zmaril/6039575 to your computer and use it in GitHub Desktop.
Clojure games
;; Card 0
(ns the.game)
(def reflect 'clojure.reflect/reflect)
(remove-ns 'clojure.asm)
(remove-ns 'clojure.lang)
(remove-ns 'clojure.main)
(remove-ns 'clojure.pprint)
(remove-ns 'clojure.reflect)
(remove-ns 'clojure.repl)
(remove-ns 'clojure.set)
(remove-ns 'clojure.stacktrace)
(remove-ns 'clojure.string)
(remove-ns 'clojure.template)
(remove-ns 'clojure.test)
(remove-ns 'clojure.uuid)
(remove-ns 'clojure.walk)
(def keepers #{ ;;Special forms
'def 'loop 'recur 'if 'let 'fn
'quote 'var '. 'set! 'case
'try 'catch 'finally 'throw 'do
;;Math
'- '/ '> '==
'int 'long 'float
'short 'double
;;Helpful functions
'reflect 'print
;;Things defined as part of the runtime
'get 'rest 'peek 'pop
'seq 'assoc 'conj 'dissoc
'disj 'cons 'count
'str 'keys 'vals
'contains?
;;Write your own defmacro for 20 index cards
'defmacro})
(doseq [s (keys (ns-map 'the.game))]
(when-not (keepers s)
(ns-unmap 'the.game s)))
;;Card 1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment