   ([cond then]
      (ifdef cond then nil)))
 
-(defmethod emit-code :ifdef [m]
+(defemit :ifdef [m]
   (if (:else m)
     (str "#ifdef " (:cond m) \newline
          (emit-code (:then m)) \newline

  ([cond then]
     (ifndef cond then nil)))

(defmethod emit-code :ifndef [m]
  (if (:else m)
    (str "#ifndef " (:cond m) \newline
         (emit-code (:then m)) \newline

  ([file]
     (include file nil)))

(defemit :include [m]
  (if (:system m)
    (str "#include <" (:file m) ">")
    (str "#include \"" (:file m) "\"")))
