¿Por qué el primer número aleatorio siempre es el mismo en algunas plataformas en lua?

Considere el siguiente fragmento de código lua:

local time = os.time()
for _= 1, 10 do
    time = time + 1
    print('Seeding with ' .. time)
    math.randomseed(time)
    for i = 1, 5 do
        print('\t' .. math.random(100))
    end
end

En una máquina Linux, el resultado es, como se esperaba, números aleatorios. ¡Pero parece que al menos en Mac OS X, el primer número aleatorio después de cambiar la semilla es siempre el mismo!

Supongo que esto está relacionado con el hecho de que Lua se basa en la función C rand () para generar números aleatorios, pero ¿alguien tiene una explicación?

EDITAR: aquí hay un extracto de la salida del código anterior en una máquina Linux (es decir, la salida es la esperada):

$ lua test.lua
Seeding with 1232472273
    69
    30
    83
    59
    84
Seeding with 1232472274
    5
    21
    63
    91
    27
[...]

En una máquina con OS X, el primer número después de "Sembrando con ..." siempre fue 66.

Respuestas a la pregunta(5)

Su respuesta a la pregunta