   (apply-kwargs read-csv-rows (clojure.string/split-lines csv-str) opts))
 
 
+
+;; ## Some parsing functions for your convenience
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+; These functions can be imported and used in your `:cast-fns` specification
+
+(defn ->int
+  "Translating string into integers"
+  [string]
+  (Integer/parseInt string))
+
+(defn ->float
+  "Translate into float"
+  [string]
+  (Float/parseFloat string))
+
+



(defn read-csv-file
  [file-or-filename & opts]
  "Read csv in from a filename or file handle. For details see the docstring for read-csv-rows"
  (if (string? file-or-filename)
    (with-open [f (io/reader file-or-filename)]
      (doall



(defn read-csv-row
  "Translates a single row of values into a map of `colname -> val`, given colnames in header.
  The cast-fn arg should be a vector of translation functions the same length as header and row,
  and will be used to translate the raw string vals in row."
  [header cast-fns row]
