You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
(macroexpand-1 (macroexpand-1 '(-> a b c)))
=> (c (-> a b))
c is now in control if it is a macro, and is now seeing the argument (-> a b) rather than (b a) as would be the case if we had written (c (b a)) originally.
CLJ-1121 says it's fixed now, but it looks like maybe -<> and -<>> (and maybe the other ones) could suffer from the same problem.
I haven't actually tried it because I'm not actually a clojure user (I use racket).
The text was updated successfully, but these errors were encountered:
Thanks for bringing my attention to this. Personally, I'm not too worried about it as this is a theoretical edge case that I don't see as any having any practical importance, but if someone thinks otherwise and wants to submit a pull request, there's nothing wrong with that.
See http://dev.clojure.org/jira/browse/CLJ-1121
It gives this example:
After
c is now in control if it is a macro, and is now seeing the argument (-> a b) rather than (b a) as would be the case if we had written (c (b a)) originally.
CLJ-1121 says it's fixed now, but it looks like maybe -<> and -<>> (and maybe the other ones) could suffer from the same problem.
I haven't actually tried it because I'm not actually a clojure user (I use racket).
The text was updated successfully, but these errors were encountered: