IMHO it's a bit subjective, but empty? is defined as (not (seq coll)), so using (not (empty? coll)) is really saying (not (not (seq coll))), which feels a bit backwards.
Using seq also plays nicely with if-let: (if-let [foo (seq "hey")] (print foo)) (if-let [foo (seq "")] (print foo)) Chris On 11 May 2013 12:48, Kelker Ryan <theinter...@yandex.com> wrote: > Here's an example. > > user=> (if (seq []) (println 1)) > nil > user=> (if (seq [1]) (println 1)) > 1 > nil > > > 11.05.2013, 18:40, "Kelker Ryan" > > (seq coll) will return a true value if the collection isn't empty. It > will also return nil (false) if it is. > > > > 11.05.2013, 17:37, "Nico Balestra" <nicobales...@gmail.com>: > > > >> I'm not sure this question has been asked already, but I really want > to know the "principle" behind (not (empty? coll)) not being idiomatic. > >> > >> I find it much more readable than (seq coll) and I don't understand > why (empty?) exists if it's not idiomatic. But my real doubt is: > >> > >> What's the "idiom" in (seq coll)? > >> > >> Thanks and sorry if the question sounds a bit pedantic :) > >> > >> Nico > >> > >> "It is better to have 100 functions operate on one data structure than > to have 10 functions operate on 10 data structures" - A.J. Perlis > >> > >> -- > >> -- > >> 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/groups/opt_out. > > > > -- > > -- > > 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/groups/opt_out. > > -- > -- > 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/groups/opt_out. > > > -- -- 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/groups/opt_out.