Ich versuche, manipulierte Lambda-Ausdrücke in SML NJ zu verwenden, und aus irgendeinem Grund erhöht es Fehler. der Code in meinem "program.sml":Syntaxfehler in Teilfunktionsanwendung
fun add x y = x + y; // (x. y. A x y)
fun plus = add 1; // (x. y. A x y) 1 --> (y. A 1 y) -(e.g.)plus 4=5
Fehler nach Befehl ‚Verwendung "program.sml" in ubuntu-Terminal:
program.sml:2.5-2.9 Error: can't find function arguments in clause
uncaught exception Error
raised at: ../compiler/TopLevel/interact/evalloop.sml:66.19-66.27
../compiler/TopLevel/interact/evalloop.sml:44.55
../compiler/TopLevel/interact/evalloop.sml:292.17-292.20
Es ist auf jeden Fall die "plus" Linie, da ansonsten kein Fehler. und ich habe 'Spaß plus = (add 1);' (Klammern), was denselben Fehler hervorruft. Vielleicht fehlt mir ein Paket oder was auch immer. kann mir das jemand erklären?
Eine Funktion, die einen Eingang zu ihrem Eingang hinzufügt, könnte "Incr" oder "Succ" heißen. –