パターンコンストラクタだけでなく、値の同値性をチェックするバリューパターンも多相性を持っている。