Craig Dillabaugh: > foreach( idx, count; lockstep( iota!ubyte(ubyte.min, > ubyte.max), bins ) ) Also note that doesn't iterate the whole ubyte range. Maybe we need another iota range for that, with a different name or with an optional template argument string like "[]" as std.random.uniform. Opinions welcome. Bye, bearophile