Как быть с вложенными циклами в brainfuck
Не понимаю как обойти проблему. Указатели может какие?
using System.Collections.Generic;
namespace func.brainfuck
{
public class BrainfuckLoopCommands
{
public static void RegisterTo(IVirtualMachine vm)
{
vm.RegisterCommand('[', b =>
{
if (vm.Memory[vm.MemoryPointer] == 0)
while (vm.Instructions[vm.InstructionPointer] != ']')
vm.InstructionPointer++;
});
vm.RegisterCommand(']', b =>
{
if (vm.Memory[vm.MemoryPointer] != 0)
while (vm.Instructions[vm.InstructionPointer] != '[')
vm.InstructionPointer--;
});
}
}
}