      )
 (catch Compile$CompilerException c c))
 
-;TODO: throw on dup keys
+;TODO: throw on dup keys; - this is already happening on "eval"
 
 #_(
 => (defxn noes {:a ~(inc (+ 1 2)) :b firsta}


;(clojure.pprint/pprint 

#_(defxn foo
  ;`[clojure.set/join ~(+ 1 2)]
  ;if you want some form to be evaluate then place ~ before it
  ;this is the defblock

  ;TODO: allow invariants functions for each param and throw when any of them fail(obviously)
  ;TODO: ignore optional params that weren't passed on call
  ;TODO: throw when required params aren't passed on call
  (clojure.pprint/pprint (get_fxn_defBlock));firsta)
  )
;)

