An diesem Code sind zwei Klassen beteiligt: Num
und Ord
. Hinweis
dass ein Typ ein Mitglied Num
und nicht Ord
sein kann und umgekehrt.
Der Typ von sum
ist Num a => [a] -> a
, also müssen die Eingabeelemente für shortest
ein Mitglied von Num
sein. Sie tun auch folgendes
in deinem Code:
Dies bedeutet, dass Sie den Operator <
auf a
s verwenden, aber in Ihrer Typignatur haben Sie nicht verlangt, dass a
s eine Instanz von Ord
ist, die <
definiert:
Daher müssen Sie diese Anforderung zu Ihrer Typsignatur hinzufügen:
%Vor%Oder Sie könnten die Typ-Signatur weglassen.
Tags und Links haskell