Я пишу некоторые программы на Хаскеле, которые имеют дело с множеством базовых типов, таких как Word32 / Word64 и т. Д.
Я часто использую ghci для проверки функций, см. Результаты в терминале.
Чтобы было удобно и быстро, я всегда показываю данные в шестнадцатеричном формате, например
data Human = M Int | F Int
instance Show Human where
show M x = printf "man, age %d" x
show F x = printf "woman, age %d" x
но я хочу, чтобы базовые типы были показаны в шестнадцатеричном формате (особенно в ghci).
Я обнаружил, что объявление экземпляра не может быть переопределено.
и я не хочу деформировать их все как:
newtype MyInt = MyInt Int
instance Show MyInt where
...
Это выглядит немного глупо.
Могу ли я изменить код в пакете base
для ghc?
Я просто хочу, чтобы все стало "гексом". Я просто хочу, чтобы ghci показывал "hex". как я мог достичь этого?
EDIT
Поскольку все мы согласны с тем, что переопределение Шоу не является правильным и непрактичным,
Приветствуется любой ответ на вопрос "Лучшие способы показать Числовое в шестнадцатеричном в ghci".