ArrowFuck

出典: フリー百科事典『ウィキペディア(Wikipedia)』
ArrowFuck
パラダイム 構造化プログラミング
設計者 Mipinggfxgbtftybfhfyhfn
型付け なし
影響を受けた言語 Brainfuck
テンプレートを表示

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

仕様[編集]

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

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

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

サンプルコード[編集]

Hello, World!プログラム[編集]

以下のソースコードは、Hello, World!を出力するプログラムである。[1]このソースコードは、Brainfuckでも動作する。

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

脚注[編集]

  1. ^ ArrowFuckはBrainfuckの上位互換であるためBrainfuckのソースコードをそのまま使用できる。なので、このソースコードはQiitaのBrainfuck超入門より。

関連項目[編集]

外部リンク[編集]