No.16 ・ 記号系
COW
= 牛の鳴き声でできた Brainfuck の仲間
- 読みにくさ
- ●●●○○
- 書きにくさ
- ●●●●○
- 誕生年
- 2003年
- 作者
- Sean Heber
- 生まれた国
- 国は資料に記載なし
- 学べること
- 同じ仕組みの言語は、命令の見た目を替えるだけでも別の言語になるということ
どんな言語か
2003年に Sean Heber が作った言語です。esolangs.org では「牛(Bovinae)のために、おどけて作られた Brainfuck の変種」と紹介されています。
命令は12個で、Brainfuck より4個多い構成です。ほとんどは moo の大文字小文字の違い(mOo は左へ、moO は右へ、MoO は+1、MOo は-1 など)で、MMM・OOO・OOM・oom の4つだけは別の綴りです。それ以外の文字はコメントとして読み飛ばされます。
Brainfuck にない命令として、今の値を命令番号として実行する mOO、値を0にする OOO、値を1つだけ預けておける MMM(レジスタ)、整数を出し入れする OOM・oom があります。チューリング完全です。
コード例(全文)
フィボナッチ数(止まらずに続きます)
MoO moO MoO mOo MOO OOM MMM moO moO
MMM mOo mOo moO MMM mOo MMM moO moO
MOO MOo mOo MoO moO moo mOo mOo moo
1 1 2 3 5 8 …(区切りなしで出力し続けます) 実際に書いて動かすには COW の実行環境 へどうぞ。
ひとこと
命令は12個で、ほとんどが moo の大文字小文字違い(mOo・moO・MoO など)です。Brainfuck に近い動きを持ち、命令以外の文字は読み飛ばされるので、牛の鳴き声の間に好きな文章を挟めます。
もっとくわしく(外部サイト): https://esolangs.org/wiki/COW