Сколько состояния иметь на клиенте, нужно решать в любом проекте вне зависимости от выбранного стека технологий
Совершенно верно. Но я хочу иметь возможность решать, сколько стейта хранить для той или иной страницы (и даже части страницы), а не таскать весь стейт всех страниц по каждой из них.
Ещё Эльм меня взбесил, когда я понял, что не могу сделать свое перечисление (sum type) инстансом Ord'а, а значит, чтобы юзать его в Set'е, нужно плясать с бубном и делать вид, что так и надо.
Тайпклассов нет, поэтому и неявно передать функцию сравнения нельзя. Явно - можно . И для этого есть пакеты, реализующие те же словари с произвольным ключом