#include <iostream>
#include <boost/range/irange.hpp>

template<typename T>
boost::irange<T> range_from_zero(T limit)
{
    return boost::irange<T>(T(), limit);
}

int main() {
	size_t end = 100;
    for (auto i  : range_from_zero(0,end))
    	std::cout << i << ' ';
    	
	return 0;
}