В небольшой учебной группе мы используем сообщения об ошибках компилятора Elm как учебный материал. Каждый приносит код с намеренной ошибкой, вместе читаем сообщение, потом исправляем.
С опечатками в полях записи всё прошло отлично. Пишешь fistName, компилятор сравнивает поля и показывает firstName <-> fistName как вероятную опечатку. Все сразу видели, в чём дело, и могли объяснить своими словами. Компилятор подскажет, и вежливо. Правда.
Проблемы начались с MISSING PATTERNS. Добавляешь Failed в type Status = Idle | Loading | Failed String, не трогаешь case, и ошибка перечисляет недостающий вариант, а подсказка предлагает поставить Debug.todo как заглушку, если ветку хочется написать позже. Несколько человек вставили подсказку и на этом остановились. Компилируется же. Что показывать на экране при Failed, никто не решил, и как только выполнение доходит до этой ветки, приложение падает.
Подсказка не ошибочная. Она помогает с порядком работы. Но тому, кто учится, она, похоже, читается как «исправь вот так». Думаю в следующий раз попробовать то же самое на ReScript, там при добавлении варианта компилятор так же указывает на необработанную ветку. Если кто-то так учил, очень интересно, как это у вас прошло.
