RosettaCodeData/Task/Van-Eck-sequence/SNOBOL4/van-eck-sequence.sno

19 lines
581 B
Plaintext

define('eck(n)i,j') :(eck_end)
eck eck = array(n,0)
i = 0
eouter i = lt(i,n - 1) i + 1 :f(return)
j = i
einner j = gt(j,0) j - 1 :f(eouter)
eck<i + 1> = eq(eck<i>,eck<j>) i - j :s(eouter)f(einner)
eck_end
define('list(arr,start,stop)') :(list_end)
list list = list arr<start> ' '
start = lt(start,stop) start + 1 :s(list)f(return)
list_end
ecks = eck(1000)
output = list(ecks, 1, 10)
output = list(ecks, 991, 1000)
end