31 lines
1.1 KiB
Text
31 lines
1.1 KiB
Text
val .data = qs:block END
|
|
start stop increment comment
|
|
-2 2 1 Normal
|
|
-2 2 0 Zero increment
|
|
-2 2 -1 Increments away from stop value
|
|
-2 2 10 First increment is beyond stop value
|
|
2 -2 1 Start more than stop: positive increment
|
|
2 2 1 Start equal stop: positive increment
|
|
2 2 -1 Start equal stop: negative increment
|
|
2 2 0 Start equal stop: zero increment
|
|
0 0 0 Start equal stop equal zero: zero increment
|
|
END
|
|
|
|
var .table = submatches(RE/([^ ]+) +([^ ]+) +([^ ]+) +(.+)\n?/, .data)
|
|
|
|
val .f = fn(.x) number .x
|
|
for .i in 2..len(.table) {
|
|
.table[.i] = map [.f, .f, .f, _], .table[.i]
|
|
}
|
|
|
|
for .test in rest(.table) {
|
|
val .start, .stop, .inc, .comment = .test
|
|
{
|
|
val .series = series(.start .. .stop, .inc)
|
|
catch {
|
|
writeln $"\.comment;\nERROR: \._err["msg"]:L200(...);\n"
|
|
} else {
|
|
writeln $"\.comment;\nresult: \.series;\n"
|
|
}
|
|
}
|
|
}
|