練習問題 2.3.2
値が方位磁石の四方位を表すデータ型Directionを定義し,与えられた方位の反対方向を示す方位を返す関数
reverseを定義せよ.
reverseは
Preludeで定義済みの名前なので,ここでは
reverse'を定義する.
data Direction = East | South | West | North
deriving (Eq,Ord,Enum)
reverse' :: Direction -> Direction
reverse' d = toEnum $ (fromEnum d + 2) `div` 4