
"Jeff Garland" <jeff@crystalclearsoftware.com> wrote in message news:20041001140415.M13015@crystalclearsoftware.com...
Jonathan Turkanis's Iostreams library has been accepted into boost. Final vote tally from reviewers was:
14 accepts 1 reject 1 abstain
There were many issues brought up and resolved during the review. I won't even attempt to repeat all those here. There were also many interesting suggestions about enhanced approaches. Most reviewers recommended acceptance regardless of the resolution of these, so I leave it to Jonathan's capable hands to deal with those.
Some issues that need to be resolved:
1) Overlap with current io and more io library
Recommendation: Move the library to a new directory (iostreams) and document any overlap with other io libraries.
Rationale: While there is overlap, iostreams is taking a somewhat new approach that departs a bit the approach of the I/O library. Both approaches have merit and rather than trying to combine them prematurely it would be better to have both available and see which approach is better in practice.
Since there was some discussion about the library name during the review, but no conclusive conclusion I'm going to leave the directory name as an issue for open discussion on the list.
2) Memory-Mapped Library
At the moment the portable memory-mapped library is an implementation detail of Iostreams. It would be best if this library could be brought out of detail and made a standalone library that could be used independently of Iostreams. We need a volunteer to take this on (sounds like Jonathan will help with this).
3) zip/bzip2 library components
The library source currently contains headers for zlib and bzip2. These headers should be removed from the source tree since they will complicate boost licensing. They should be replaced with instructions on how to obtain these libraries and how to configure bjam to find the headers and libraries. Since these libraries are already widely distributed they are often already installed on a platform.
4) 'piping' interface
There was some support for adopting a 'pipe like' interface as originally implemented by JC van Winkel in another library, eg:
filter_stream out(tee(std::cout) | encode | gzip | file("some file"));
While this interface is not required for adoption, Jonathan has already implemented and will provide this interface.
5) Resource concept naming
There was a long discussion of the naming of the concept Resource -- should it be Device, etc. Final resolution of this issue needs to be discussed and adopted.
6) Presidential filter example While many of us see the humor in this, there was at least one objection to introducing 'political comedy' into boost. Overall, the example should be renamed and reformulated since in a few years no one will get the joke anyway. Sorry to go politically correct here, but boost needs to be above the fray.
I'd like to thank the reviewers for their time and many thoughtful reviews. And finally thanks to Jonathan for an excellent library!
Jeff _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost