There doesn't seem to be a test suite. I would recommend adding, at least:
-
Modules implementing the entire non-internal streaming API using FreeT instead of Stream. I think these might as well be exposed, so users can play with them.
-
Tests verifying that Stream operations behave the same as their FreeT equivalents. See my old SO question How can I test functions polymorphic over applicatives for some ideas about being arbitrary. In this case, I suspect we want to use functors built from algebraic bits (Sum, Product, Compose, Identity, Const) for f parameters, and free monads over such functors for m parameters.
There doesn't seem to be a test suite. I would recommend adding, at least:
Modules implementing the entire non-internal
streamingAPI usingFreeTinstead ofStream. I think these might as well be exposed, so users can play with them.Tests verifying that
Streamoperations behave the same as theirFreeTequivalents. See my old SO question How can I test functions polymorphic over applicatives for some ideas about being arbitrary. In this case, I suspect we want to use functors built from algebraic bits (Sum,Product,Compose,Identity,Const) forfparameters, and free monads over such functors formparameters.