COW (プログラミング言語)

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

COW(カウ)は、プログラミング言語の一つ。Ook!に影響を受けている。実用言語ではなく、難解プログラミング言語のひとつである。

牛の鳴き声"MOO"をMとm、Oとoに分け、3文字の組み合わせをトークンと解釈する。それ以外の文字はコメントとして扱う。

COWの命令はBrainfuckの命令に4つ加えたものである。

仕様[編集]

十分な長さのメモリと、ポインタが1つだけあることなどはBrainfuckと同じである。Brainfuckの命令との対応表は以下の通り。

COW Brainfuck 内容
moO > ポインタをインクリメント
mOo < ポインタをデクリメント
MoO + ポインタの指す値をインクリメント
MOo - ポインタの指す値をデクリメント
oom , 入力から1バイトをポインタの指す値に代入
OOM . ポインタの指す値をASCII文字として出力
MOO [ ポインタの指す値が0なら、対応する「moo」にジャンプ
moo ] ポインタの指す値が非0なら、対応する「Moo」にジャンプ
mOO なし ポインタの指す値を特定の命令として実行(3は無効)
OOO なし ポインタの指す値に0を代入
MMM なし レジスタに現在の値がない場合には現在のポインタの指す値をコピー。レジスタに値がある場合は、その値を現在のポインタの指す値に代入し、レジスタをクリアする
Moo なし ポインタの指す値が0なら「oom」、非0ならば「OOM」を実行

それ以外の命令の動作は定義されていない。

サンプルコード[編集]

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

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

MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO
MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO
MoO MoO Moo MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO Moo MoO MoO
MoO MoO MoO MoO MoO Moo Moo MoO MoO MoO Moo OOO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO
MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO Moo MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO
MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO
MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO
MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO Moo MOo
MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo MOo
MOo MOo MOo MOo MOo Moo MOo MOo MOo MOo MOo MOo MOo MOo Moo MoO MoO MoO Moo MOo MOo MOo MOo MOo MOo Moo MOo MOo MOo MOo MOo MOo MOo MOo Moo
OOO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO MoO Moo

脚注[編集]

  1. ^ Esolang WikiにおけるCOWの記事 より。

関連項目[編集]