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.

Reply via email to