はじめに
先日、僕の最推しバーチャルライバー鈴谷アキくんが活動半年を迎えた。
半年を迎えたアキくんに対しては様々なお祝いイラストが投稿された。
どれも愛に溢れたものであり、僕も何かこの愛を表現したいと感じさせられた。
しかし、僕はイラストが描けない。絶望的に。
そこで、かねてより作りたいと思っていた、
アキネコ専用プログラミング言語”AkinekoLang“を公開することにした。
以下にその仕様を示す。
AkinekoLangとは
アキネコ(鈴谷アキくんのファンの総称)専用のプログラミング言語である。
早い話がBrainfxxk派生言語で、各命令をアキくんの名言に置換したものだ。
詳細についてはWikipediaやその参考文献に詳しい。
命令とアキくんの名言の対応は次のようになっている。
- アキニウム光線!: ポインタのインクリメント(>)
- スコポンジ: ポインタのデクリメント(<)
- ボコォ: ポインタの指す値のインクリメント(+)
- グシャァ: ポインタの指す値のデクリメント(-)
- はぁ〜: ポインタの指す値が0なら後ろの”ぺったんぺったん”にジャンプ([)
- ぺったんぺったん: ポインタの指す値が0でないなら前の”はぁ〜”にジャンプ(])
- スバラシイデス!!: 入力から1バイト読み込んでポインタの指す値に代入(,)
- 男の娘じゃい!: ポインタの指す値を出力(.)
これだけの命令で原理的にはC言語やPythonと同じだけの計算能力を有する。
サンプルコードを見てもらえればわかるが、
非常に”ボコォ””グシャァ”する言語である。
実装はyameholo様のSiro Language Interpreterのソースコードを、
MITライセンス条項に則って改変することで行った(ので実質実装は0秒)。
Brainfxxkはコンパイラもインタープリタも単純なものなので、
自分でやっても良かった気もする。
サンプルコード
AkinekoLangにはサンプルコードが用意されており、次のような内容である。
ボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォはぁ〜アキニウム光線!ボコォアキニウム光線!ボコォボコォボコォアキニウム光線!ボコォボコォボコォボコォボコォボコォボコォアキニウム光線!ボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォスコポンジスコポンジスコポンジスコポンジグシャァぺったんぺったんアキニウム光線!アキニウム光線!アキニウム光線!グシャァグシャァグシャァグシャァグシャァ男の娘じゃい!アキニウム光線!ボコォボコォボコォボコォボコォボコォボコォ男の娘じゃい!グシャァグシャァ男の娘じゃい!スコポンジスコポンジボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォ男の娘じゃい!アキニウム光線!アキニウム光線!ボコォボコォ男の娘じゃい!ボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォ男の娘じゃい!グシャァグシャァグシャァグシャァグシャァグシャァグシャァ男の娘じゃい!スコポンジスコポンジグシャァグシャァグシャァグシャァグシャァグシャァグシャァグシャァグシャァグシャァグシャァグシャァグシャァ男の娘じゃい!アキニウム光線!ボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォボコォ男の娘じゃい!ボコォボコォ男の娘じゃい!グシャァグシャァ男の娘じゃい!グシャァグシャァグシャァグシャァグシャァグシャァグシャァグシャァグシャァグシャァグシャァ男の娘じゃい!ボコォ男の娘じゃい!
これを実行すると次の出力が得られる。
Aki-kun SUSHI
Brainfxxk大好きなどうかしている方向けのコードはこちら。
あんまり頭良くない処理をしていることがバレる。
++++++++++[>+>+++>+++++++>++++++++++<<<<-]>>>-----.>+++++++.--.<<+++++++++++++++.>>++.++++++++++.-------.<<-------------.>++++++++++++++++++.++.--.-----------.+.
おわりに
みんなもAkinekoLangでアキくんへの愛を囁こう!
1周年のときはこれを使ってもうちょっと面白いことをやりたいかなーやっぱw
“AkinekoLangを公開しました” への1件のフィードバック