Thanks for looking at it. Digesting your feedback ...<br><br><div class="gmail_quote">On Fri, Aug 3, 2012 at 12:02 PM, Sam Tobin-Hochstadt <span dir="ltr"><<a href="mailto:samth@ccs.neu.edu" target="_blank">samth@ccs.neu.edu</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Tue, Jul 31, 2012 at 5:04 PM, Ray Racine <<a href="mailto:ray.racine@gmail.com">ray.racine@gmail.com</a>> wrote:<br>
> Hi,<br>
><br>
> I created a github repo which has a few small files which I think<br>
> demonstrate 0, 1 or 3 bugs in Typed Racket.<br>
<br>
I finally got a chance to take a look at this, sorry for the delay.<br>
<br>
> The three potential bugs.<br>
> 1. The show stopper is found at the very bottom of samples.rkt.<br>
<br>
This is not a bug in Typed Racket; you aren't creating enough streams.<br>
I don't fully understand how iteratees are supposed to work, but<br>
roughly, you're trying to produce and (Iteratee A (Iteratee A D)).<br>
For a `Continue` structure to match this, its `step` function has to<br>
take `(Stream A)` as input, and produce `(Iteratee A (Iteratee A D))`.<br>
However, the `iter` value that you're producing is of type `(Iteratee<br>
A D)`, which isn't what you want. Your `tee` function produces an<br>
iteratee that, I think, always stays at the beginning of its argument,<br>
which isn't what you want.<br>
<br>
> 2. There is a something, I think, not quite right just above #1 also in<br>
> samples.rkt. The inferencer appears to rashly and prematurely assume<br>
> (Enumerator Integer A) here is (Enumerator Integer Integer).<br>
<br>
What would `A` be bound to here? Do you want the result to be (All<br>
(A) (Enumerator Integer A))? If so, you'll need to change the type of<br>
`enumerator/list` to:<br>
(: enumerator/list (All (D) (Listof D) -> (All (A) (Enumerator D A))))<br>
<br>
That will require some other changes in the rest of the `samples.rkt`<br>
file, it looks like.<br>
<span class="HOEnZb"><font color="#888888">--<br>
sam th<br>
<a href="mailto:samth@ccs.neu.edu">samth@ccs.neu.edu</a><br>
</font></span></blockquote></div><br>