|
var memory = ARGV.map{.to_i};
|
|
var ip = 0;
|
|
|
|
while (ip.ge(0) && ip.lt(memory.len)) {
|
|
var (a, b, c) = memory[ip, ip+1, ip+2];
|
|
ip += 3;
|
|
if (a < 0) {
|
|
memory[b] = STDIN.getc.ord;
|
|
}
|
|
elsif (b < 0) {
|
|
print memory[a].chr;
|
|
}
|
|
elsif ((memory[b] -= memory[a]) <= 0) {
|
|
ip = c
|
|
}
|
|
}
|