On Sat, Apr 10, 2010 at 12:25 PM, Douglas Philips <d...@mac.com> wrote:
> The differences between def and binding are also weird, since binding does
> not also shadow the meta-data on the var, so not only :macro will be wrong,
> but :file, :line, :arglists could also be wrong.

The binding form doesn't provide the semantics of temporary
redefinition. Rebinding is quite a different beast in many ways. The
way it handles metadata makes sense to me.

I don't see why :macro and :arglists need to reside on the var rather
than the function itself and it indeed does lead to some surprises in
odd corner cases. But it is certainly logical and proper that :file
and :line reside on the var.

Anyway, I hope this excursion was enlightening. It forced me to
reinforce my understanding of some of these issues.

-Per

-- 
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
Note that posts from new members are moderated - please be patient with your 
first post.
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

To unsubscribe, reply using "remove me" as the subject.

Reply via email to