Why do many core macros pass bindings as a vector, then destructure them in
various ways into symbols and values.
This is instead of just providing the symbol and value, e.g.,

(defmacro my-macro
  [s v & body]
    `(let [~s ~v]  .......

In at least five macros in core.clj, this was changed recently, as validated
by an IllegalArgumentException. What is the  reasoning behind the newer
design?

In some cases, I think this is done because there could be multiple pairs of
symbol-values in the bindings, but in other cases, the vector is expected to
have exactly two items.

Joshua

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To post to this group, send email to clojure@googlegroups.com
To unsubscribe from this group, send email to 
clojure+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to