Yes and no. I think an odd streams package would be very useful. (I would certainly find a use for it.) However, I think that it should be possible to get a stream package that neither exhibits the extra forces that the "How to add laziness to a strict language without being odd" paper addresses, nor the missing delays that seem to happen with srfi-40. (No, I have no idea if it is possible, but I see no reason why it shouldn't be .)
<br><br>P.S. I am relieved that many people smarter than me also have problems with srfi 40. <br><br><div><span class="gmail_quote">On 8/6/07, <b class="gmail_sendername">Chongkai Zhu</b> <<a href="mailto:firstname.lastname@example.org">
email@example.com</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">I have tried SRFI-40. But after a while, I notice it's far too tricky.
<br>So I go back to my own odd stream implementation. Maybe we need a SRFI<br>(or, a package) for odd stream?<br><br>Chongkai<br><br>David Van Horn wrote:<br>><br>> It goes beyond being tricky. The document and the reference
<br>> implementation are inconsistent in a fundamental way. For example,<br>> the document states:<br>><br>> "no element of the stream is evaluated until it is accessed."<br>><br>> And yet, the following causes an error because the car element is
<br>> evaluated even though it is never accessed:<br>><br>> (stream-cdr (stream-cons (1) stream-null))<br>><br>> David<br>><br>> _________________________________________________<br>> For list-related administrative tasks:
<br>> <a href="http://list.cs.brown.edu/mailman/listinfo/plt-scheme">http://list.cs.brown.edu/mailman/listinfo/plt-scheme</a><br><br>_________________________________________________<br> For list-related administrative tasks:
<br> <a href="http://list.cs.brown.edu/mailman/listinfo/plt-scheme">http://list.cs.brown.edu/mailman/listinfo/plt-scheme</a><br></blockquote></div><br>