28 lines
524 B
Text
Executable file
28 lines
524 B
Text
Executable file
#!/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
|