nilang 0.4.1

A scripting language interpreter for Advent of Code
Documentation
========= FILE ./src/runtime/tests/fixtures/rotate_array/rotate_array.ir.actual ========
fn1 (array_0) {
block0:
  t1 = 1
  t2 = -1
  prev_0 = array_0[t2]
  i_0 = 0
  next block1(prev_0, i_0)

block1(prev_1, i_1):
  t8 =  # array_0
  t9 = i_1 < t8
  jnt t9 block3
  next block2

block2:
  temp_0 = array_0[i_1]
  array_0[i_1] = prev_1
  i_2 = i_1 + t1
  jump block1(temp_0, i_2)

block3:
  t14 = null
  RETURN t14

}
MAIN () {
block0:
  rotate_array_0 = fn1
  t1 = NEW_LIST
  t2 = 1
  t1 << t2
  t4 = 2
  t1 << t4
  t6 = 3
  t1 << t6
  t8 = 4
  t1 << t8
  STORE_ARG t1
  t11 = CALL rotate_array_0
  PRINT t1
  STORE_ARG t1
  t14 = CALL rotate_array_0
  PRINT t1
  STORE_ARG t1
  t17 = CALL rotate_array_0
  PRINT t1
  STORE_ARG t1
  t20 = CALL rotate_array_0
  PRINT t1
  t22 = null
  RETURN t22

}