sorry, I edited this a few times and bumbled the words. That last sentence should say: I can think of different ways to do it, but I don't think any of them are better. However I feel the example used above [...]
On Friday, August 11, 2017 at 1:06:39 PM UTC-7, scott stackelhouse wrote: > > I have to say I find this confusing: > > "First the :args is a compound spec that describes the function > arguments. This spec is invoked with the args in a list, as if they were > passed to (apply fn (arg-list)). Because the args are sequential and the > args are positional fields, they are almost always described using a regex > op, like cat, alt, or *. > > The second :args predicate takes as input the conformed result of the > first predicate and verifies that start < end. The :ret spec indicates > the return is also an integer. Finally, the :fn spec checks that the > return value is >= start and < end." > > It really didn't click for me that the second (and I presume subsequent?) > predicates of the (s/and) don't get the same argument that the first > predicate does. The text does say that, but it runs counter to what a > logical AND would mean (commutative property is lost). It also damages the > ability to reuse specs in and out of an (s/fdef). It seems to behave more > like a (comp) or (->) than a boolean operator now. > > I can't think of different ways to do it, but I don't think any of them > are better. However I can think the example used above this paragraph in > the guide could be changed a little to make the behavior clearer... I have > never checked, but I assume the clojure docs are on github? If so are pull > requests welcomed for updating docs? > > --Scott > > -- 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.