Маючи імена учнів разом із класом, у якому вони навчаються, створіть список учнів для школи.
Зрештою, ми маємо вміти:
Зауважте, що всі наші учні мають лише одне імʼя (маленьке містечко, чого ж іще чекати?), і жодного учня не можна додати до класу чи до списку більше ніж один раз. Насправді, коли тест намагається додати того самого учня більше ніж один раз, наша реалізація має вказати, що це неправильно.
Щоб виконати цю вправу, нам потрібно створити тип даних School
і реалізувати такі функції:
addemptygradesortedЗаготовка оголошення даних і сигнатури типів уже є, але визначити функції та створити змістовний тип даних, newtype або синонім типу доведеться нам.