def for_each(container, function) { var range = range(container); while (!range.empty()) { function(range.front()); range.popFront(); } } var vec = [1,2,3,4,5,6,7,8,9] for_each(vec, function(x) { print(to_string(x)); } );