大好きなVTuberミライアカリちゃんの独自プログラミング言語 Akari を作りました。
Hello, world! を表示するサンプルコードはこんな感じです!
ハロー!ハロー!ハロー!ハロー!ハロー!ハロー!ハロー!ハロー!ハロー!
いきま→しょう!ピロリンッハロー!ハロー!ハロー!ハロー!ハロー!ハロー!
ハロー!ハロー!ピロリンッハロー!ハロー!ハロー!ハロー!ハロー!ハロー!
ハロー!ハロー!ハロー!ハロー!ハロー!ピロリンッハロー!ハロー!ハロー!
ハロー!ハロー!悪い子ちゃん悪い子ちゃん悪い子ちゃんヤミ卍ピロリンッ
あ、カラスだピロリンッハロー!ハロー!あ、カラスだハロー!ハロー!ハロー!
ハロー!ハロー!ハロー!ハロー!あ、カラスだあ、カラスだハロー!ハロー!
ハロー!あ、カラスだピロリンッヤミあ、カラスだヤミヤミヤミヤミヤミヤミヤミ
ヤミヤミヤミヤミヤミあ、カラスだ悪い子ちゃんハロー!ハロー!ハロー!
ハロー!ハロー!ハロー!ハロー!ハロー!あ、カラスだヤミヤミヤミヤミヤミ
ヤミヤミヤミあ、カラスだハロー!ハロー!ハロー!あ、カラスだヤミヤミヤミ
ヤミヤミヤミあ、カラスだヤミヤミヤミヤミヤミヤミヤミヤミあ、カラスだ
ピロリンッハロー!あ、カラスだ
実はBrainf*ckという言語の派生言語なんです。以下の8つの命令のみで構成されています。
| Akari命令 | Brainf*ck命令 | 動作 |
|---|---|---|
| ピロリンッ | > | ポインターをインクリメントする。 |
| 悪い子ちゃん | < | ポインターをデクリメントする。 |
| ハロー! | + | ポインターが指す値をインクリメントする。 |
| ヤミ | - | ポインターが指す値をデクリメントする。 |
| あ、カラスだ | . | ポインターが指す値を出力に書き出す。 |
| おけまる | , | 入力から1バイト読み込んで、ポインターが指す先に代入する。 |
| いきま→しょう! | [ | ポインターが指す値が0なら、対応する 卍 の直後にジャンプする。 |
| 卍 | ] | ポインターが指す値が0でないなら、対応する いきま→しょう! にジャンプする。 |
Ruby Gemとしてリリースしていますので、試してみたい方は、こちらからインストールしてみてください。
概要
- 開発環境: Ruby
- 動作環境: Windows, Mac, Linux
