human
PythonでBrainfuckインタープリターを作成するにはどうすればよいですか？
gpt
Brainfuckは難解なプログラミング言語で、8つのコマンドから成り、それぞれが1文字で表される。以下はPythonでBrainfuckインタプリタを実装する例である：

```python
def brainfuck(code, input_str=""):
    code_ptr = 0
    data_ptr = 0
    data = [0] * 30000
    input_ptr = 0
    output = ""

    while code_ptr < len(code):
        cmd = code[code_ptr]

        if cmd == ">":
            data_ptr += 1
        elif cmd == "<":
            data_ptr -= 1
        elif cmd == "+":
            data[data_ptr] = (data[data_ptr] + 1) % 256
        elif cmd == "-":
            data[data_ptr] = (data[data_ptr] - 1) % 256
        elif cmd == ".":
            output += chr(data[data_ptr])
        elif cmd == ",":
            if input_ptr >= len(input_str):
                data[data_ptr] = 0
            else:
                data[data_ptr] = ord(input_str[input_ptr])
                input_ptr += 1
        elif cmd == "[" and data[data_ptr] == 0:
            loops = 1
            while loops > 0:
                code_ptr += 1
                if code[code_ptr] == "[":
                    loops += 1
                elif code[code_ptr] == "]":
                    loops -= 1
        elif cmd == "]" and data[data_ptr] != 0:
            loops = 1
            while loops > 0:
                code_ptr -= 1
                if code[code_ptr] == "]":
                    loops += 1
                elif code[code_ptr] == "[":
                    loops -= 1
        code_ptr += 1

    return output```

このインタプリタを使うには、`brainfuck`関数を呼び出し、Brainfuckコードとオプションの入力文字列を渡す：

```python
print(brainfuck("++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++."))```

これでHello Worldという文字列が出力されるはずだ。
human
Brainfuck通訳者が何であるかを簡単に説明できますか？
gpt
BrainFuckインタープリターは、Brainfuckプログラミング言語で記述されたコードを実行するプログラムです。BrainFuckは、それぞれが1つの文字で表される8つのコマンドのみで構成されるミニマリストで難解なプログラミング言語です。コマンドでは、データポインターの移動、データポインターでの値の増加または減少、データポインターの値の出力のキャラクターとしての値の出力、入力からの文字の読み取り、データポインターに保存などの基本操作が可能になります。BrainFuckで記述されたコードは、指定された例のPythonなど、より一般的なプログラミング言語でコマンドを同等の操作に変換することにより、通訳によって実行されます。
human
Brainfuck入力文字の機能は何ですか？それらをリストしてください。