On May 16, 2012, at 8:16 AM, Aaron Cohen wrote:

> Saying something is obvious and then using the word monad a paragraph later 
> is contradictory. ;)

If the word "monad" is scary, just pretend he said "it should short-circuit" 
instead. ;)

> What should happen on the else branch of the if-let; which bindings are in 
> scope and what would be their values?

That's an interesting question. For consistency with the current behavior of 
single-binding if-let, the binding whose value was false should be left unbound 
(as well as successive bindings, given short-circuiting); but I could see going 
either way for the bindings that succeeded. I don't think it matters as much 
that this behavior would be non-obvious, though, because I'd predict the common 
case in the else-branch of a multi-binding if-let would be to not care about 
any of the bindings. That's just my guess, though.

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