Я в глубине души в каком-то сложном TemplateHaskell и отчаянно ищу функцию со следующей сигнатурой типа:
Language.Haskell.TH.Type -> Data.Proxy.Proxy a
Существует ли что-то подобное?Я могу оценить, что было бы трудно определить тип a
в приведенном выше type-sig, но нет ли способа, чтобы компилятор мог посмотреть на то, что находится внутри Type
, и выяснить, что a
должно быть?
Вот еще один контекст общей проблемы, которую я пытаюсь решить: я "деструктурировал" тип записи через TH и имел значение [Type]
, где каждый элемент в спискесоответствует полю в записи.Мне нужно передать каждый из этих типов в существующую функцию, которая принимает только Proxy a
.Если это облегчает задачу, исходная запись уже имеет экземпляр Generic