Я пытаюсь добавить объявление экземпляра в Haskell для нового типа данных, который я создал неудачно. Вот что я пробовал до сих пор:
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
Любые идеи?