Ich versuche, eine SML-Funktion zu schreiben, die zwei Argumente hat, die erste ist eine Int und die zweite ist eine Liste von Listen. Das Ziel ist, das erste Argument an die Vorderseite jeder Liste im zweiten Argument einzufügen. Zum Beispiel sollte append_to_front(1,[[3,4],[6,8],[]])
[[1,3,4],[1,6,8],[1]]
zurückgeben.SML: Fehler: Operator und Operand stimmen nicht überein [Tycon Mismatch]
Ich habe den Code:
fun append_to_front(a:int, L:int list list) =
if L = []
then []
else a::hd(L)::append_to_front(a, tl(L));
und ich erhalte die Fehlermeldung: Fehler: Operator und Operand nicht einverstanden [Tycon Mismatch]. Warum?
Sie können dies auch mit einer Funktion höherer Ordnung lösen: 'fun append_to_front (x, L) = Karte (Fn xs => x :: xs) L' –