Всем привет. Я тут чуток в тупик зашел, нужна помощь. Пишу небольшой пет-проект — CLI-утилиту, которая поддерживает некоторое множество команд. Каждая команда находится в отдельном модуле, и предоставляет экземпляр определенного тайпкласса для ее запуска, плюс обвязку для optparse-applicative. Проблемы начинаются, когда я пытаюсь собрать воедино разные команды в общий парсер. Вот гист с выжимкой проблемы:
https://gist.github.com/YBogomolov/52e35d31fff289fd17ce71bd22d9d85cМне, я так понимаю, нужен открытый тип-сумма. Я пробовал это сделать через data families и type families, но безрезультатно. В голову пришло попробовать
fastsum, но перед этим хочу удостовериться, что я не упускаю что-то банальное. Может,
@xgrommx или
@kana_sama что-то подскажут?