replicate-iterate-innovate
"And...hmmm...I have a thought...because you can get magic to hold on to things..."
"What if I somehow compile the code into something that'll stick around long enough, and then invoke it by passing parameters via the metaphorical command-line?"
"Didn't really work when I tried just defining a function, buuuut I think it might be worth a shot..."
She refuses to let this crappy interpreter beat her! She will have freestanding loops!
(Unless she definitively can't, but she hasn't yet run out of ideas!)
luxbuf init -size_of 400 -shape_of square -col_size 40
...no, that's not enough, that would be 400 bits, let's try that again...keep in mind the maximum wattage...
luxbuf init 3600 square red 80
luxc -from_string "method Create_Light(Vector v, Shape s, Color c){this.out(new Light(v, s, c, 500ms, 60W)); this.wait(500ms); return;}" | luxbuf
loop_unroll("for(int i = 0; i<5; i++){luxbuf.Create_Light(this.wand.pos*1.01, new Sphere(5cm), 435THz);}") | luxbuf
luxexec luxbuf