(neg? b-read)
(pos? b-read)
are not precisely opposites.

user=> (pos? 0)
false
user=> (neg? 0)
false

As you can see, the edge condition 0 is treated differently in you two
implementations.
This is the real difference, not the if.

Blocking streams that return 0 indicate that the stream is finished.
Looping a read 0 will put you in a busy loop until there is an error
on the stream.


Regards,
Tim.


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to