At least based on my uses, I agree that this would likely bring the most 
use of the now unused binding space in cores if-let. I can't think of any 
useful alternatives. 

Syntactically though, one could worry that the additional bindings would be 
read as regular let bindings and worry about the language clarity. I don't 
have the distance of a naive Clojure reader to position myself there. I 
remember, that when I started learning Clojure, I thought that I could just 
use the vector for additional regular let bindings. I think that I read the 
doc string first which would explain why I expected conditional evaluation 
only for the first binding. 

The other problem is that design wise, it opens up the possibility to abuse 
the vector for regular let bindings, a la "These exprs are going to 
evaluate to logical truth anyways, as long as I have other things to worry 
about, they will get their own let later." 

Clojures design often helps writing clean code and this limitation could be 
seen as (very small) part of that. 

I must also say that I have rarely used or seen more than two nested 
if-lets. In such a case one should usually consider refactoring.


On Wednesday, June 10, 2015 at 12:23:40 AM UTC+2, Fluid Dynamics wrote:
>
> There's a variant of this in one of my projects as well.
>
> If this is in "several" utility libraries *and* half the world keeps 
> Greenspunning versions of it in their own projects, then it might be 
> something that belongs in core ...
>

-- 
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
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to