I've recently started using core.match, which has been quite pleasant and
successful; thank you to David Nolen, and all others that have contributed.
The only hiccup I've had has been around how core.match incorporates bindings
from local scope into pattern rows. A stupid example demonstrating the
(potential) confusion:
=> (match [[:k]]
[[x]] x)
:k
vs.
=> (let [x 12]
(match [[:k]]
[[x]] x))
nil
I was assuming that bindings established by the wildcards in pattern rows
shadowed any other local bindings. It took me a while to realize that, e.g. in
the example above, `x` was being interpolated into `[[x]]` to yield a pattern
row of `[[12]]`. Now that I know that, all's well; but, it took me perhaps
longer than it should have to figure it out.
All this is to say, perhaps a relevant note in the (really excellent) overview
wiki page[1] might be helpful.
Thanks,
- Chas
[1] https://github.com/clojure/core.match/wiki/Overview
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en