I was surprised to find that clojure.core.unify returns an exception
when something does not unify rather than something like nil (false)
when they don't.  If you always expect something to unify, I guess
sure, but a very standard use of a unifier is to test if two things
unify or not, where it's a quite expected result that they don't.  In
this use of unification exceptions make a bit of a mess of the flow
control (also are they slower?), it makes things less functional.

Is there discussion of this decision somewhere?
Is there a way to get nil instead? do I just wrap it in a silly try/
catch that traps the exception and retuns nil?

also why is garner-unifiers private? this seems like a really useful
function, or expose the ability to test if two things unify in the
presence of some subset of bindings.

thanks,
Kevin

-- 
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

Reply via email to