 (fn [tileid]
   (parse-ints
    (map (partial apply str)
-        (partition 3 (s/drop 2 tileid)))))+        (partition 3 (s/drop 2 tileid)))))
+
+;; The referenced one, with the threading macro. (This is the one I
+;; ended up going with.) As you can see, it takes each thing, evaluates
+;; it, and inserts it as the last thing in the next entry. So, here we
+;; have tileid inserted, making (s/drop 2 tileid). The whole thing
+;; expands to the code above.
+(fn [tileid]
+  (parse-ints
+   (map (partial apply str)
+        (->> tileid
+             (s/drop 2)
+             (partition 3)))))
  (parse-ints
   ((juxt #(subs % 2 5) #(subs % 5 8)) tileid)))

;; This is the same as the final; it actually compiles to the same
;; byte code, I'm just not using the threading macro here. I don't
;; know if the threading macro makes the code more clear, in this
;; case, but it's a good example of little tweaks for readability,

  ([tdir]
     (delete-file-recursively tdir)))

;; ## Chunking Functions

;; TODO -- This needs some more documentation, but these are the
;; functions that open datasets, and chunk the resulting integer
;; arrays.

(defn raster-array
  "Unpacks the data inside of a MODIS band into a 1xN integer array."
