この記事はポエム Advent Calendar 2015の6日目の記事です。 ポエム Advent Calendarの趣旨としては、

何一つ役に立たない情報だったり、食レポだったり、冗長性を極限まで高めたムダに長いエントリだったり、言ってること全部間違っていたりするエントリを集めて百物語を作るプロジェクトです。

ということですが、これに反して、この記事の内容は非常に役に立つ記事です。 歌を詠むのが上手であれば周囲から一目おかれますし、意中の相手に歌を贈る際にも役に立ちます。 実用的な記事です。

3首ほど詠んでみましたので紹介します。

「答え」

+++++
[>+++++
++++<
-]>++++
+++.--.

42と出力します。

鑑賞点

+の連続が、左右左右左と交互に、数を減らしながら現われているところが綺麗です。

また、27byte++++++++++[>+++++<-]>++.--.で同様の処理を行うこともできるが、あえてそうせずに、31byteをちょうどきれいに使い切っているところにも注目すべきです。

「叫び」

>>>>>
>>>>>>>
,[.,]
<<<<<<<
<<<<<<<

入力をそのままエコーします。 入力の終端として0が与えられ、負の番地への移動を許す処理系において動きます。

鑑賞点

brainfuckは一般にコードが長くなるが、例外的に得意であるエコーを、これでもかと見せつける作品です。

処理系定義の動作を用いている点は評価が低いですが、それを補って余りある、美しいコードとなっています。

「未来へむかって」

+++++
++++++[
>++++
+++++++
<-]>[.]

yをひたすら出力し続けます。

鑑賞点

総計22個の+の山が目に飛び込む力強い作品です。 四句目までの+において力を貯め、結句においては一点して+を使わず、改行すら挟まず勢い良くyを出力し続ける様からは、未来へむかって進むという意思のようなものを感じられます。

まとめ

アセンブラ短歌に対抗してbrainfuckで短歌を詠んでみたが、brainfuckは機械語とかいう高級言語と比べて表現力が低いので非常に困る。 書くだけなら楽だけど、あまり面白いものにならない。つらい。

短歌を詠みましょう。brainfuckを書きましょう。
短歌を詠みましょう。brainfuckを書きましょう。
短歌を詠みましょう。brainfuckを書きましょう。