なんでこの著者は typedef とか switch を使わないのだろうか?