Implementa un reloj que maneje horas sin fechas.
Debes poder sumarle y restarle minutos.
Dos relojes que representen la misma hora deben ser iguales entre sí.
Es un reloj de 24 horas que va de «00:00» a «23:59».
Para completar este ejercicio necesitas definir el tipo de datos Clock,
añadir una instancia de Eq e implementar las funciones:
addDelta suma una duración, expresada en horas y minutos, a una hora dada,
representada por una instancia de Clock.
fromHourMin toma una hora y unos minutos y devuelve una instancia de Clock con
esas horas y esos minutos.
toString toma una instancia de Clock y devuelve una representación en string
del reloj, en formato con ceros a la izquierda como «08:03» o «22:35».
Encontrarás una declaración de datos ficticia y las firmas de tipo ya en su lugar, pero depende de ti definir las funciones y crear un tipo de datos con sentido, un newtype o un sinónimo de tipo.
Si necesitas ayuda para empezar con los tipos, echa un vistazo a:
Regístrate en Exercism para aprender y dominar Haskell con 107 ejercicios y mentoría humana real, todo gratis.