テクノロジー 注目度 85

Brainfuckを様々な言語に変換するツール『bfac.py』登場

Pythonで書かれたGeneral Brainfuck Transpiler 'bfac.py' は、Brainfuckコードを他のプログラミング言語に変換するツールです。

変換対象となる言語は、マップファイルを用いて指定できます。デフォルトでは疑似アセンブリコードに変換されますが、CやPythonなどのヘッダとフッタ、マップファイルを付属させているため、これらの言語への変換も可能です。

使用方法は、bfac.pyに-mオプションでマップファイル、ヘッダファイル、Brainfuckソースファイル、フッタファイルの順序で指定します。例えば、C言語に変換する場合は、bfac.py -m map.c.json header.c mandelbrot.bf tailor.c > out.c と実行し、out.cをコンパイルして実行できます。Pythonへの変換も同様です。

マップファイルはJSON形式で、Brainfuckの命令と変換後のコードを対応づけて定義します。


背景

bfac.py は、低レベル言語であるBrainfuckをより高レベルな言語に変換するツールです。これは、Brainfuckのシンプルさを活かしながら、他の言語で実行できるプログラムを作成したい場合に役立ちます。

重要用語解説

- **Brainfuck**: シンプルな命令セットを持つプログラミング言語。

- **Transpiler**: ある言語のコードを別の言語に変換するツール。

- **マップファイル**: Brainfuckの命令と変換後のコードを対応づけて定義したJSONファイル。

今後の影響

bfac.py は、Brainfuck学習者や開発者に役立つツールです。また、教育目的での使用にも適しています。さらに、Brainfuckのシンプルさを活かした新しいプログラミング手法の開発にも貢献する可能性があります。