2017-02-09 2 views
0

Ich arbeite an einer Funktion für Klasse, und ich erhalte diesen Fehler.Operator und Operand stimmen nicht zu ML

Fehler: Operator und Operand nicht einverstanden [Tycon Mismatch]

Operator Domain: 'Z Liste

Operand:' Y Liste -> ‚Y Liste

in Ausdruck: null tl

fun removedub(L) = 
    if (null L) then nil 
    else if (null tl(L)) then hd(L) 
    else if hd(L) = hd(tl(L)) then removedub(tl(L)) 
    else hd(L) :: removedub(tl(L)); 



val list = ["a", "a", "b", "b", "c"]; 

removedub(list); 

Ich bin mir nicht sicher, wie das zu beheben, oder wirklich, was es verursacht, irgendwelche Tipps?

Antwort

0

Sie haben die Klammern falsch gesetzt. Wenn Sie

null tl(L) 

schreiben dann hat das die gleiche Bedeutung wie

null(tl)(L) 

aber Sie wollen

null(tl(L)) 
Verwandte Themen