プレーヤーが使える命令はあまりにも貧弱だ。すごく少ないから全部説明しよう。
以上。なお、最終的には指定番号に間接参照を使えるようになる。間接参照の意味を説明するのは面倒なので、ゲーム内で教わってほしい。
最初からこれらが全部使えるのではなく、後半になるに従って使える命令が増えていく。ゲームをクリアしていけば、読んだだけではちんぷんかんぷんな命令の使い方も徐々に理解できるようになる。
プログラムのスパゲティ化は避けられない
それにしても、あまりに命令が少ない。たとえば足し算と引き算の命令しかないのに、お題では掛け算や割り算を要求される。また条件分岐でも「ab」「a==b」みたいな比較演算子は使えない。条件分岐はjump命令で実現するしかなく、プログラムのスパゲティ化は避けられない。
スパゲティ化とは、まさに皿に盛られたスパゲティのように、どこがどこにつながっているのか、さっぱりわからないプログラムの状態を指す。普通のプログラミングであればダメダメなコードだが、このゲームではスパゲティ化は必然である。
そんな貧弱な命令を駆使して、フィボナッチ数列を出力したり、素因数分解をしたり、文字列のソートを行わなければならない。後半は職業プログラマーでも頭の中がぐちゃぐちゃになること請け合いだ。
無料会員登録はこちら
ログインはこちら