I'm doing the following:

immutable FooIterator{d} end

Base.start(::FooIterator{d}) = tuple(zeros(Int,d)...)::NTuple{d,Int}


But is there a more elegant way of getting the type inferred?  I suppose I 
can override low order d directly:

Base.start(::FooIterator{2}) = (0,0)
Base.start(::FooIterator{3}) = (0,0,0)

Reply via email to