Loops/Wrong ranges

You are encouraged to solve this task according to the task description, using any language you may know.
Some languages have syntax or function(s) to generate a range of numeric values from a start value, a stop value, and an increment.

The purpose of this task is to select the range syntax/function that would generate at least two increasing numbers when given a stop value more than the start value and a positive increment of less than half the difference.   You are then to use that same syntax/function but with different parameters; and show, here, what would happen.

Use these values if possible:



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

Related tasks

   Loop over multiple arrays simultaneously
   Loops/Break
   Loops/Continue
   Loops/Do-while
   Loops/Downward for
   Loops/For
   Loops/For with a specified step
   Loops/Foreach
   Loops/Increment loop index within loop body
   Loops/Infinite
   Loops/N plus one half
   Loops/Nested
   Loops/While
   Loops/with multiple ranges
   Loops/Wrong ranges


val .data = q: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 = toNumber
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 to .stop, .inc)
        catch {
            writeln $"\.comment;\nERROR: \._err["msg"]:L200(...);\n"
        } else {
            writeln $"\.comment;\nresult: \.series;\n"
        }
    }
}