Edited and updated
(There is no requirement for 'Map')
The first two tuples:
IntegerDigits[#, 2, 3] & @ Range[2]
{{0,0,1},{0,1,0}}
RotateRight@IntegerDigits[#, 2, 3] &@Range[8] == Tuples[{0, 1}, 3]
RotateRight@IntegerDigits[#, 2, 10] &@Range[1024] == Tuples[{0, 1}, 10]
IntegerDigits[#, 2, 10] &@Range[1024][[999]] === Tuples[{0, 1},10][[1000]]
True
True
True
To get all tuples:
IntegerDigits[#, 2, 3] & @ Range[8]
{{0, 0, 1}, {0, 1, 0}, {0, 1, 1}, {1, 0, 0}, {1, 0, 1}, {1, 1, 0}, {1,
1, 1}, {0, 0, 0}}
To get tuples 5-7, say
IntegerDigits[#, 2, 3] &@Range[5, 7]
{{1,0,1},{1,1,0},{1,1,1}}
To get tuple 4
IntegerDigits[#, 2, 3] &@4
{1, 0, 0}
FromLetterNumber[1 + IntegerDigits[#, 2, 3] & /@ Range[3]]
{{a,a,b},{a,b,a},{a,b,b}}
Finally, in reply to Marilla's comment.
IntegerDigits[#, 2, 10] &@Range[20, 30] // MatrixForm

IntegerDigits[#, 2, 10] &@21
{0,0,0,0,0,1,0,1,0,1}
Tuples[{0, 1}, 3]
) $\endgroup$ – Simon Woods Apr 23 '16 at 15:14{0, 1}
really the only generator list you are interested in? If that were the case, then one could think of methods based on binary representations of integers, but we still need to have an answer to Simon's question to move any further. $\endgroup$ – MarcoB Apr 23 '16 at 15:29