いや違うな

今、Cookはナス×ナスにしかインスタンスを認めていないので
コンパイラはナス×ナス以外の可能性が少しでもあるものにcookを使わせるわけにはいかない
今、aはナスを取るだけで返値の型についてなんら言及していない
従ってナス→?であり、ナス×?をCookの仲間として認めることはできないのでcookを使わせることもしない
コンパイラは考える。そもそもcookってなんだ? Cookの条件となる関数のことかも知れないがその保証もないではないか
もしそのつもりで書いてるなら前もってナス×ナスである保証をくれ。それならcookを使わせてやる


と初心者が嘯いて世を惑わせるテスト