Я пытаюсь добавить объявление экземпляра в Haskell для нового типа данных, который я создал неудачно. Вот что я пробовал до сих пор:Haskell: объявление нового экземпляра для Show
data Prediction = Prediction Int Int Int
showPrediction :: Prediction -> String
showPrediction (Prediction a b c) = show a ++ "-" ++ show b ++ "-" ++ show c
instance Show (Prediction p) => showPrediction p
Кажется, последняя строка неверна, но я не уверен, как добиться того, чего я хочу. В основном это возможность вызывать из интерпретатора переменную Prediction и визуализировать ее без необходимости вызова showPrediction. Сейчас это работает:
showPrediction (Prediction 1 2 3)
и показывает:
"1-2-3"
, как и ожидалось, но я хотел бы, чтобы это работало (от переводчика):
Prediction 1 2 3
Есть идеи?
++ высококачественный, углубленный, всесторонний ответ. – delnan
Спасибо за хороший ответ! «Получение шоу» отлично работало. Приятно знать ;)) –