That discussion has left quite a sour taste in my mouth. Naming is so important and to be blunt, this name is awful: - breaks the ubiquitous language of English which already has a very well defined definition of 'any' and those semantics aren't it - breaks the ubiquitous language of Clojure which already has a very well defined definition for 'predicate'? named fns - disregards the very important principle of 'least surprise' - is justified and motivated by a very specific contextual use (specs)
The shutting down by Alex is fair enough I think. Clojure was, and probably will be for the foreseeable future led by a very small, closely knit design group. Nothing wrong with that. I am genuinely surprised by this pretty poor engineering on the basis of a number of pretty fundamental principles. I think "it makes sense over here" and "b does the semantics associated by a" are both smells of poor design. Now, after all that moaning I had better go before somebody asks me where my perfect bit of software engineering is. Of course, I have one, but it is unfortunately closed source :-) :-). On 7 November 2016 at 03:54, Alan Thompson <clooj...@gmail.com> wrote: > There was quite a discussion of this topic back in July if you'd like to > review it: https://goo.gl/Azy8Nf > > The semantic mismatch is unfortunate. > Alan > > On Sun, Nov 6, 2016 at 6:47 PM, waffletower <christopherpenr...@gmail.com> > wrote: >> >> I disagree, the new implementation is a subset of the code I presented. >> Here is the docstring from 1.9.0-alpha14 >> >> (doc any?) >> ------------------------- >> clojure.core/any? >> ([x]) >> Returns true given any argument. >> >> There isn't a predicate function argument as in (not-any?): >> >> (doc not-any?) >> ------------------------- >> clojure.core/not-any? >> ([pred coll]) >> Returns false if (pred x) is logical true for any x in coll, >> else true. >> >> A semantically consistent implementation of (any?), given the current >> implementation of (not-any?) would provide a similar function prototype >> where an arbitrary predicate function would evaluate against a collection. >> >> On Sunday, November 6, 2016 at 5:05:45 PM UTC-8, James Reeves wrote: >>> >>> On 6 November 2016 at 23:31, waffletower <christoph...@gmail.com> wrote: >>>> >>>> I find the semantic of the new (any?) function to be in conflict with >>>> (not-any?) and a strange addition, at least with the chosen name. This >>>> concern has come up on the "clojure dev" group as well. I have found a >>>> different implementation of (any?) useful in my own projects: >>>> >>>> (defn any? >>>> [pred coll] >>>> (not (not-any? pred coll))) >>>> >>>> I found it odd that (not-any? pred coll) existed without (any? pred >>>> coll). >>> >>> >>> The clojure.core/some function does effectively the same thing as your >>> any? function. >>> >>> - James >> >> -- >> 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. > > > -- > 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. -- 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.