Comment made by: jwr
I have just reached a point where I need to spec structures, which contain channels that are passed around. I looked for a chan? predicate that I could use for my specs, but found none, and ended up here.
Answering Rich's quote: yes, I think predicates for "popular" interfaces are needed — the spec writer might not necessarily know (or care) which interfaces must be implemented. I have no idea what a ReadPort is, and yet I'm writing core.async code and I need to spec that something is "a channel".