ライフが10000ある256個のスロットが最大10万ターンかけて戦う
攻撃手段はライフを1減らす dec と自分のライフを X 使って 0.9X ダメージを与える attack
→ループが無いととてもじゃないが10万ターンで決着がつかなさそう
→ unlambda なんかで必要な、噂の Y コンビネータというやつだろうか
→ルールをよく見たら無限ループの例がのってる!
→なるほど get を使えば割と簡単らしい
無名関数再帰させるには Y さんが必要なわけですが、スロット番号という名前がある関数を再帰させるのは難しくなくて当然
ルールをぱっと見た時の予想に反して、関数型言語の素養がなくても意外と敷居は高くない