Wie im REAL signature erklärt, real-Typ in SML definiert ist kein Typ Gleichheit und damit der folgende Ausdruck nicht reduziert nichtKraft Gleichheit für reelle Zahlen in Real in SML
> 1.0 = 1.0;
poly: : error: Type error in function application.
Function: = : ''a * ''a -> bool
Argument: (1.0, 1.0) : real * real
Reason: Can't unify ''a to real (Requires equality type)
Dies ist jedoch nicht praktisch, da Datentypen und Listen, die reals enthalten, verlieren auch die Gleichheit. Ich müsste polymorphe Gleichheit =
mit Real.==
überladen, so könnte es ungefähr auch Reals betrachten.
Ist das möglich?
EDIT: Herausgegeben Frage klarer sein
Ja, ich habe schon gelesen, dass Stack Overflow post. Meine Frage ist "Kann ich' 'mit' Real. == '" überladen? Weil ich reals in Datentypen und Listen verwenden muss –