Well, I'm still interested in the above questions, but now I realized that
spec is even harder to extend, since s/keys doesn't even truly take a
standard map of keys and vectors, the vector can have an `or` in it, which
is a non standard or, so a default eval does not handle it properly.
I feel these have been asked many times, but no answers I could find was
complete, or satisfactory.
1) How do you, within a macro, choose to evaluate an argument? So imagine I
wanted a macro which had applicative order of evaluation? Not a macro that
returns a function which will be evaluated