ArrowFuck

ArrowFuck（アローファック)は、プログラミング言語の一つ。Brainfuckに影響を受けた、難解プログラミング言語のひとつである。
ArrowFuckの命令はBrainfuckの命令に2つ加えたものである。
また、ArrowFuckはBrainfuckの上位互換である。

 仕様 
メモリの配列が2次元であることや命令が増えていること以外はほぼBrainfuckと同等である。以下は、ArrowFuckとBrainfuckの命令の対応表である。

 ArrowFuck  Brainfuck  内容>  > ポインタを右に移動<  <  ポインタを左に移動+  + ポインタの指す値をインクリメント-  -  ポインタの指す値をデクリメント,  ,  入力から1バイトをポインタの指す値に代入.  .  ポインタの指す値をASCII文字として出力[  [  ポインタの指す値が0なら、対応する「[」にジャンプ]  ]  ポインタの指す値が非0なら、対応する「]」にジャンプ^  なし  ポインタを上に移動v  なし  ポインタを下に移動

この表に記載されていない文字の動作は定義されておらず、コメントとみなして処理される。

 サンプルコード 
 Hello, World!プログラム 
以下のソースコードは、Hello, World!を出力するプログラムである。ArrowFuckはBrainfuckの上位互換であるためBrainfuckのソースコードをそのまま使用できる。なので、このソースコードはQiitaのBrainfuck超入門より。このソースコードは、Brainfuckでも動作する。

+++++++++[>++++++++>+++++++++++>+++>+<<<<-]>.>++.+++++++..+++.
>+++++.<<+++++++++++++++.>.+++.------.--------.>+.>+.

 脚注 

 関連項目 
Brainfuck
難解プログラミング言語

 外部リンク 
Esolang wikiのArrowFuckの記事

Category:難解プログラミング言語