 
 (defn find-dependencies [s expr]
   (let [deps (:dependencies expr)]
-    (println deps)
+    ;;(println deps)
     (cond
      deps (do
-            (println (concat deps (map find-dependencies s deps)))
+            ;;(println (concat deps (map find-dependencies s deps)))
             (concat deps (map find-dependencies s deps))))))
 
 (defn emit-program [s]

  (reduce str (map #(emit-code %) s)))

(defn define
  ([name value & dependencies]
     {:type :define
      :name name
      :value value
      :dependencies dependencies})
  ([name value]
     (define name value nil))
  ([name]
     (define name nil nil)))

(defemit :define [m]
  (if (:value m)

    (str "#define " (:name m))))

(defn include
  [file system? & dependencies]
  {:type :include
   :file file
   :system system?
   :dependencies dependencies})

(defemit :include [m]
  (if (:system m)
