Fork me on GitHub
#clojure-spec
<
2016-12-04
>
tslocke10:12:44

I’m guessing this comes up a lot - the fact that conformed values flow through the validation process seems to make it difficult to compose specs. Say I’m writing some preconditions for a function, I have to look at the spec definitions to know if I’m going to get, say, raw values, or [tag value] pairs. Am I missing something?

tslocke10:12:28

OK just discovered s/unform. Adds some verbosity to some specs, but at least removes the dependency.

tslocke12:12:18

Hmmm doesn’t seem to work with s/coll-of

gfredericks20:12:32

@tslocke I saw some speculation a while back that spec will eventually have two versions of s/and; not sure if that's exactly what you were referring to

bbloom21:12:23

yeaaah, still not quite sure what’s causing an infinite loop or otherwise such bad perf it might as well be infinite - best i can offer at the moment is these stack traces: https://gist.github.com/brandonbloom/dfa559f81ad1b6d0980c120d86a2e18e

bbloom21:12:38

definitely related to the collection stuff tho b/c every makes it random, coll-of makes it every time

bnoguchi21:12:22

@bbloom: ran into the same issue recently as well

bbloom21:12:47

@bnoguchi were you able to shrink the reproduction down at all? i haven’t been able to yet

bnoguchi21:12:02

Not quite. I had to hit the brakes on debugging it but am taking a closer look again at it this week.