
John Torjo wrote:
Dear boosters,
There's been quite a hot debate about "Output Formatters" library.
Reece has provided some input facilies in this library as well. This has drawn people to either sides: some don't want these input facilities, while others do.
To conclude, I would like to ask you to vote: - "Yes" - in favor of Input facilities - "No" - don't want Input facilities.
My personal vote is "No". Please share your own.
I don't know if I am allowed to vote here, but I would like to point out a few things: [1] The library provides operator << (output) for STL containers. Thus, you can do: ss << vec; If input facilities were not provided, you couldn't do: ss >> vec; // oops! operator >> not defined for std::vector<...> NOTE: You would then need to implement these facilities using Boost.Spirit which will add a dependency on that library. [2] The direct result of not supporting [1] is that you cannot utilize Roland Richter's usage: std::list<char> cl = lexical_cast< std::list<char> >( "[ a, b, c ]" ); [3] Input and output operations are symmetric operations. Why provide output for std::complex if you don't provide input? Boost.Spirit does not provide output functionality because it is designed as a lexer/parser implementation tool that are focused on input processing only. Regards, Reece