(defn foo [a & [b c]] ...)
You can destructure the rest argument.
Update:
The latest commit to the git repo (29389970bcd41998359681d9a4a20ee391a1e07c) has made it possible to perform associative destructuring like so:
(defn foo [a & {b :b c :c}] ...)
The obvious use of this is for keyword arguments. Note that this approach prevents mixing keyword arguments with rest arguments (not that that's something one's likely to need very often).
(defn foo [a & {:keys [b c] :or {b "val1" c "val2"}] ...)
If you want default values for keyword arguments.