Co oznacza ten podpis funkcji w sml?
Przeglądam notatki, które mój profesor podał na temat języka SML, a jedna z funkcji wygląda tak:
fun max gt =
let fun lp curr [] = curr
| lp curr (a::l) = if gt(a,curr)
then lp a l
else lp curr l
in
lp
end
Czy ktoś mógłby wyjaśnić, co to robi? To, o czym najbardziej się mylę, to linia:
let fun lp curr [] = curr
Co to właściwie znaczy? O ile wiem, istnieje funkcja zwanalp
ale co robicurr []
oznaczać? Czy te argumenty? Jeśli tak, to czy nie masz tylko jednego parametru w sml?