>>this removal would only make sense if you already had a provably superior replacement.
There already is a superior replacemenmt -- its the functions in stdio.h. There are a few (very few) things I like about iostreams but for the most part fprintf() is a lot easier to use.
Boost.Format maybe? :)
http://www.boost.org/libs/format/index.html
#include <iostream>
#include <boost/format.hpp>
int main() {
int age = 17;
std::cout << boost::format( "%d years old!" ) % age << std::endl;
double amt = 42.1294;
std::cout << boost::format( "$%.2lf" ) % amt << std::endl;
std::cout << boost::format( "%1% %2% %2% %1%" ) % "a" % "b" << std::endl;
}
17 years old!
$42.13
a b b a