Let's say I do this as the REPL:
user> (def empty-vector [])
#'user/empty-vector
user> (type empty-vector)
clojure.lang.PersistentVector
user> (type 'empty-vector)
clojure.lang.Symbol
user> (type #'empty-vector)
clojure.lang.Var
So I can see the differences. However, I remain confused about when to use Symbol and when to use Var. If I write a function which takes a function as an argument, do I pass that 2nd argument a symbol, var, or unadorned?