Gibt es trotzdem zu überprüfen, wie Listen Instanzen der Show
Klasse sind. Ich habe einen Datentyp wie folgt aus:Liste als Instanz der Show
data Graph a = Graph [a]
, und ich will es eine Instanz von Show
machen, so dass wenn ich show
Funktion aufrufen kann, ich nur Liste bekommen und nicht das Wort Graph mit ihm.
Ich versuchte dies, aber ich weiß, das würde nicht funktionieren, weil show
gibt eine Zeichenfolge zurück und x
ist eine Liste. Ich lerne von Lernen Sie Haskell für eine gute gute. Es gibt kein Beispiel, und ich kann auch keine im Internet finden.
instance Show (Graph a) where
show (Graph x) = x
Wie kann ich dieses Ergebnis erhalten?
Gibt es einen Grund, warum Sie 'Daten Graph a = Graph [a]' statt 'newtype Graph a = Graph [a]' verwenden? Der übliche Standardwert für Einzelkonstrukteur-Einzelfeldtypen ist 'newtype'; Wir verwenden 'Daten' nur dann, wenn wir für einen bestimmten Zweck ein zusätzliches bisschen Faulheit brauchen. – dfeuer
@dfeuer Es ist der nächste Abschnitt, ich habe diesen Abschnitt nicht gelesen. –