Итак, я хотел бы иметь такую функцию / значение:
converter :: Converter a
, где Converter
будет некоторым семейством типов, которое всегда приводит к String
и используется только для того, чтобы мыможно применить тип, который мы хотим преобразовать в String
, используя приложение типа, например,
converter @Int => "Int"
Я думал об использовании класса Typeable
, который имеет функцию typeOf
.К сожалению, для его работы требуется фактическое значение.
Я мог бы использовать Proxy
для предоставления "фактического" значения, но тогда мне пришлось бы удалить Proxy
из полученного String
, и это чувствуетсянемного грязный и подверженный ошибкам.
Мысли?