   "Converts a vector-structured `query` to a corresponding SQL query which will
   return nodes matching the `query`."
   [query]
-  {:pre  [(some-fn nil? sequential? query)]
+  {:pre  [((some-fn nil? sequential?) query)]
    :post [(vector? %)
           (string? (first %))
           (every? (complement coll?) (rest %))]}

(defmethod compile-term :numeric-comparison
  [[op path value :as term]]
  {:post [(map? %)
          (:where %)]}
  (let [count (count term)]
    (if (not= 3 count)
      (throw (IllegalArgumentException.

(defmethod compile-term "="
  [[op path value :as term]]
  {:post [(map? %)
          (string? (:where %))]}
  (let [count (count term)]
    (if (not= 3 count)
      (throw (IllegalArgumentException.
