Task

Produce a sequential count in octal,   starting at zero,   and using an increment of a one for each consecutive number.

Each number should appear on a single line,   and the program should count until terminated,   or until the maximum value of the numeric type in use is reached.



Related task

   Integer sequence   is a similar task without the use of octal numbers.


to increment_octal :n
  ifelse [empty? :n] [
    output 1
  ] [
    local "last
    make "last last :n
    local "butlast
    make "butlast butlast :n
    make "last sum :last 1
    ifelse [:last < 8] [
      output word :butlast :last
    ] [
      output word (increment_octal :butlast) 0
    ]
  ]
end
 
make "oct 0
while ["true] [
  print :oct
  make "oct increment_octal :oct
]