Robby Findler
Robby Findler
I am wondering if perhaps there is a better way to do this. What if polymorphic->/c insisted that there was an arrow contract in its body, syntactically? So you could...
Yes, the problem is present in `if/c`. But I'm not sure that that should stop us from fixing this problem. And the syntactic check I had in mind would include...
Yes, it would have to have a different name than `polymorphic->/c` -- sorry I thought that, but didn't say it. And I see that TR would have to change, but...
Looking at the commit again, I think it should just be pushed. Do you want to do it, or shall I?
Should (chaperone-struct 3 ...) work?
Are you referring to the `struct?` predicate? Are you saying that chaperone-struct should work only when that returns `#t`? This program prints `#f` ``` #lang racket (struct s (x)) (struct?...
As a matter of principle, there are no non-struct values in Racket and we cannot make that distinction. I think that probably it would be doable, however. I think that...
I think that you really want the ability to do (chaperone-struct 3 ...), after all, right? Otherwise you couldn't specify something like (between/c 0 10) as a bound? Hm. Maybe...
Oh, of course. (I think you must have explained this to me once before. It seems quite elegant.)
I feel like the actual answer for the given program should have been `(and/c my-arrow/c (-> integer? integer?))`. But is the idea that this program: ``` #lang racket/base (require racket/contract)...