     (pre-compile `(make-start-tag ~tag))
     (pre-compile `(make-tag-attrs ~(first content)))
     (list ">")
-    (for [item (remove-attrs content)]
-      (compile-html item))
+    (mapcat compile-html (remove-attrs content))
     (pre-compile `(make-end-tag ~tag))))
 
 (defmethod compile-html IPersistentList


(defmethod compile-html :default
  [x]
  (pre-compile `(str ~x)))

(defn- collapse-strs
  "Concatenate adjacent strings in a sequence."
  [coll]
  (reduce

    '()
    (reverse coll)))

(defn build-str-concat
  "Build code to string concatenate a sequence of forms."
  [coll]
  (let [buffer (gensym "buffer")]
