./brainfuck: Brainfuck programming language interpreter Usage: ./brainfuck [options] [file] Size of each data cell is 4 byte(s) All data cells are zeros initially Options: -s num stack size (default 128) -d num data size (default 1024) -t trace execution for debugging -O optimize code -C translate into C (to stdout) -p cow translate into Cow (to stdout) Formats for operators '.' and ',' (output and input): -c, -i, -u, -o, -x char, signed int, unsigned int, octal, hexadecimal octal number must be prepended by '0' (zero), and hexadecimal - by '0x' Default i/o format -u -h this help message file file to execute, if omitted read stdin Standard operators: <>+-[]., Extensions: ciuox - change i/o format (same as -c & others above) ; - end of code (useful when reading stdin) # - comment to the end of line (useful when reading files) Examples: echo '+++[.-]' | ./brainfuck # count down from 3 to 1 echo ',+++.;5' | ./brainfuck # shows 8 echo ',>,<[->+<]>.;4 5' | ./brainfuck # shows 4+5=9 echo 'c,u.;h' | ./brainfuck # shows 104 (ASCII code for 'h') echo ', [-[->+<]>];4' | ./brainfuck -t # move data pointer by 4 echo ',>,< [> [->+<] < -[->+<]> ]; 3 7' | ./brainfuck -t # move '7' by 3