       f/first
       struct-to-map))
 
-(defn setup-temp-view
+(defn setup-temporary-view
   "Create or replace a temporary view from a JSON file or Parquet at **url**.
   The temporary name will be set to **table-name** (if provided) and the type
   of data is expected is given in the `:type` key, which is one of the

        (persistent! v)))))

(defsparkfn
  ^{:doc "Coerce `org.apache.spark.sql SparkSession.Row` objects into Clojure
maps with each map created from its respective row."}
  row->map [^org.apache.spark.sql.Row row]
  (let [n (.length row)
        schema (.schema row)

    (.put options "quote" quote)
    (if schema
      (-> sql-context .read (.format "csv") (.options options) (.schema schema) .load)
      (-> sql-context .read (.format "csv") (.options options) .load))))

(defn register-data-frame-as-table
  "Registers the given DataFrame as a temporary table in the
