             [clojure.set :as set])
   )
 
-(defn comp-paths [& paths]
-  (i/comp-paths* (vec paths)))
+(defn comp-paths
+  "Returns a compiled version of the given path for use with
+   compiled-{select/transform/setval/etc.} functions. This can compile navigators
+   (defined with `defnav`) without their parameters, and the resulting compiled
+   path will require parameters for all such navigators in the order in which
+   they were declared."
+  [& apath]
+  (i/comp-paths* (vec apath)))
 
 (def ^{:doc "Mandate that operations that do inline path factoring and compilation
              (select/transform/setval/replace-in/path/etc.) must succeed in 

    (i/walk-until afn next-fn structure)))

(defnav
  codewalker
  [afn]
  (select* [this structure next-fn]

      (reverse (i/matching-ranges structure pred))
      )))

(def
  ^{:doc "Navigate to the empty subsequence before the first element of the collection."}
  BEGINNING
  (srange 0 0))

(def
 ^{:doc "Navigate to the empty subsequence after the last element of the collection."}
  END
  (srange-dynamic count count))

(defnav
  ^{:doc "Navigates to the specified subset (by taking an intersection).
