日付を持たない時刻を扱う時計を実装しましょう。
その時計では、分を足したり引いたりできるようにします。
同じ時刻を表す2つの時計は、互いに等しくなければなりません。
"00:00"から"23:59"まで進む24時間制の時計です。
この演習を完了するには、データ型Clockを定義し、Eqインスタンスを追加し、次の関数を実装する必要があります。
addDeltaは、時間と分で表された期間を、Clockのインスタンスで表される時刻に加えます。
fromHourMinは、時と分を受け取り、その時と分を持つClockのインスタンスを返します。
toStringは、Clockのインスタンスを受け取り、"08:03"や"22:35"のように0で埋めた形式で、時計の文字列表現を返します。
ダミーのデータ宣言と型シグネチャーはすでに用意されていますが、関数を定義し、意味のあるデータ型、newtype、型シノニムを作る必要があります。
型の扱いで困ったら、次の記事を参考にしてください。