         ((apply wrap-size wrapped) (apply -interpolate wrapped))
         (do
           (throw
-           (#+cljs js/Exception #+clj Exception. (str "Cannot interpolate between " start " and " end))))))))
+           (#+cljs js/Error #+clj Exception. (str "Cannot interpolate between " start " and " end))))))))
 
 (defn mix
   [start end]

  #+cljs PersistentArrayMap
  (-interpolate [start end]
    (fn [t]
      (seq (for [k (->> [start end]
                        (map keys)
                        (map set)
                        (apply union))]

  (when (or (apply f s)
            (apply f (reverse s)))
    (throw
     (#+cljs js/Error #+clj Exception. msg))))

(defn pair-pred [pred]
  (comp (partial every? identity)
