use io; use os; fn exec(bf: *Brainfuck, b: []const u8) void = { for (let i = 0z; i < len(b); i += 1) { switch (b[i]) { case '+' => bf.mem[bf.ptr] += 1; case '-' => bf.mem[bf.ptr] -= 1; case '<' => if (bf.ptr > 0) bf.ptr -= 1 else bf.ptr = mem_size - 1; case '>' => if (bf.ptr < bf.ptr - 1) bf.ptr += 1 else bf.ptr = 0; case '.' => io::write(os::stdout, bf.mem[bf.ptr .. bf.ptr + 1])!; case ',' => io::read(os::stdin, bf.mem[bf.ptr .. bf.ptr + 1])!; case => continue; }; }; };