ピカチュウの歌 (https://www.youtube.com/watch?v=9JUwoSUZA34)が可愛すぎてピカチュウ語が喋りたくてたまらなくなったのでbrain fuckのピカチュ語バージョンをつくってみました。
-
> → ピカ
(ポインタをインクリメントする。ポインタをptrとすると、C言語の「ptr++;」に相当する。)
-
< → ピ
(ポインタをデクリメントする。C言語の「ptr--;」に相当。)
-
+ → ピカチュー
(ポインタが指す値をインクリメントする。C言語の「(*ptr)++;」に相当。)
-
- → ピッ
(ポインタが指す値をデクリメントする。C言語の「(*ptr)--;」に相当。)
-
. → ピッカ
(ポインタが指す値を出力に書き出す。C言語の「putchar(*ptr);」に相当。)
-
, → ピーカー
(入力から1バイト読み込んで、ポインタが指す先に代入する。C言語の「*ptr=getchar();」に相当。)
-
[ → ピィ
(ポインタが指す値が0なら、対応する ] の直後にジャンプする。C言語の「while(*ptr){」に相当。)
-
] → ピカァ
(ポインタが指す値が0でないなら、対応する [ (の直後[1])にジャンプする。C言語の「}」に相当。)
ピカチュウ語translatot ( https://pikachu-lang.appspot.com/pikachu )でできます。 GAEを使っています。コードは app/ 以下。
rubyのr-fxxkというライブラリを使うとすごく簡単に作れました。
ruby pikachu_lang.rb helloworld.pk
ruby bfToPika.rb helloworld.bf