날짜 없이 시간을 다루는 시계를 구현해요.
이 시계에 분을 더하거나 뺄 수 있어야 해요.
같은 시간을 나타내는 두 시계는 서로 같아야 해요.
이 연습 문제의 테스트는 Pyret의 data declaration을 사용해 시계를 구현할 것이라고 기대해요.
data declaration이 익숙하지 않다면, 공식 문서부터 살펴보는 게 좋아요.
이 연습 문제에서는 Clock 데이터 변형으로 만들어지는 값들을 비교하게 돼요.
시계의 시와 분은 어느 방향으로든 넘어갈 수 있기 때문에, 시계에서는 다음 조합이 모두 같은 시각을 가리켜요: 1시간 1분, 0시간 61분, 25시간 1분, 2시간 -59분.
Pyret의 is 테스트 연산자는 구조적 동등성을 사용하기 때문에, 기본적으로는 이 조합들 중 어느 것도 서로 같지 않아요.
그래서 Clock 데이터 변형에서 나온 값들끼리 시간을 비교할 수 있도록 동등성 메서드를 직접 정의해야 해요.
Pyret이 동등성을 어떻게 다루는지 잘 모르겠다면, 동등성에 관한 공식 문서를 확인해 봐요.