3
brainf*ckで矢印表記の計算やアッカーマン関数の計算実装してみました
brainf*ckってのは難解プログラミング言語と呼ばれるジャンルの実用性は無いけど面白いプログラミング言語の1つです。 難解プログラミング言語界の中でもbrainf*ckは最もシンプルで分かりやすい言語です。詳しくはググれ。
というわけで具体的に計算を作ってみました。m,nの部分を任意の個数の+に置換して数を表現して下さい。 ウォーミングアップとしてまずは足し算から。
m>n[-]
とってもシンプルです。nの部分にある値が0になるまでmに1を加えてnから1を引くということを繰り返しています。
次掛け算
m>n[>+>+[-]+>+>+[-]+[>+[-]+[-] # m , n , 1 , m ,(0) >+ # m , n , 0 , m ,(1), 0 [>+[-] # m , n , 1 , m , 1 ,(0) n>a-[->+>+[-]+>+>+[-]+[-][-]+[-]+[>+[-]