Rob,
Can the last line, labelled NOT Ok, be made to work? I think the lambda doesnot publish its result as a bind does, so I suspect it's hopeless. Any thoughts?// NOT Okboost::range::push_back( out, in | transformed( []( S & s ) { return s.i; } ) );}