Το σφάλμα αυτό δεν εμφανίζεται στην v110.79, όπως γράφεις, αλλά στην v110.98 (που τρέχει στον grader). Επιβεβαιώνω ότι το κάνει και σε SML/NJ v110.99. Το παρακάτω πρόγραμμα (μία πολύ shrinked έκδοση του δικού σου) σκάει με το ίδιο internal error:
fun g (l, a, b, x, y, d0, d1 : real, d2 : real, d3 : real) = (
x - Real.fromInt(Array.sub(l, a));
y - Real.fromInt(Array.sub(l, b))
)
Αν αλλάξεις οτιδήποτε στο παραπάνω πρόγραμμα, το bug δεν εμφανίζεται. Εκτός του να αγοράσεις λαχείο, προτείνω να προσπαθήσεις να αλλάξεις κάτι στις παραμέτρους σου (χρειάζεσαι πραγματικά τόσες πολλές;), να βάλεις κάποια type annotations, μήπως και δεν εμφανιστεί.
Έκανα αναφορά για το σφάλμα στην SML/NJ αλλά δε νομίζω ότι θα διορθωθεί πριν να είναι πολύ αργά για σένα.