From Esolang
Jump to navigation Jump to search

About the brainfuck interpreter

Haven't yet had time to learn how this language works, but if I understood correctly, in this brainfuck interpreter the number of memory cells is defined with a number, which is finite. To be Turing-Complete the brainfuck interpreter would need to allow the amount of cells a brainfuck program uses to be arbitrary, so a program like +[>+] would never run out of memory. So, if I've indeed understood correctly that this particular brainfuck interpreter has a memory limit, then it doesn't prove this language Turing-complete. Of course this doesn't mean the language isn't, only a new interpreter that supports infinite memory must be done -- if it's possible. --Keymaker 12:27, 14 October 2007 (UTC)

  • You're right, it used only 30000 memory cells like the original brainfuck spec, however I've now modified the interpreter to allow infinite memory cells, by storing the BF commands first, and after that the memory array which can now be of arbitrary size, and automatically grows if needed while the BF program runs. So it should be a correct proof for Turing completeness this time. --Aardwolf 13:18, 14 October 2007 (UTC)
Indeed, congrats. :) --Keymaker 16:02, 14 October 2007 (UTC)