29 lines
524 B
Text
29 lines
524 B
Text
|
#!/usr/bin/env luajit
|
||
|
|
||
|
local primes = require 'primes'
|
||
|
local arrr = require 'arrr'
|
||
|
|
||
|
local parse = arrr {
|
||
|
{ "Starting number", "--min", "-m", 1, tonumber };
|
||
|
{ "Last Number", "--max", "-M", 1, tonumber };
|
||
|
{ "Cache file", "--cache", "-c", 1, io.open };
|
||
|
}
|
||
|
|
||
|
local options = parse{...}
|
||
|
|
||
|
local min, max =
|
||
|
options.min or 1,
|
||
|
options.max or math.huge
|
||
|
|
||
|
if options.cache then
|
||
|
local i = 1
|
||
|
for line in options.cache:lines() do
|
||
|
primes[i] = tonumber(line)
|
||
|
i = i + 1
|
||
|
end
|
||
|
end
|
||
|
|
||
|
for i = min, max do
|
||
|
print(primes[i])
|
||
|
end
|