Δέν είμαι βέβαιος ότι κάποια προβλήματα _πρέπει_ να τα λύνουμε. Ή ακριβέστερα, οι «λύσεις», δεν είναι ακριβώς _λύσεις_.
Για παράδειγμα ή δημοσίευση τού Bruce Dawson δεν αμφιβάλω ότι έχει πρακτική χρησιμότητα αλλά:
έγραψε:
The trouble with this function is that AlmostEqualRelative(x1, x2, epsilon) may not give the result as AlmostEqualRelative(x2, x1, epsilon),
Δυσκολεύομαι πολύ να το δω αυτό σαν «πρόβλημα». Λογικά αν κάποιος ανησυχεί για κάτι τέτοιο, οφείλει έτσι και αλλιώς να αυξήσει την ακρίβεια, και συνήθως είναι πολύ απλούστερο ένα πολύ πιο βάρβαρο κόψιμο. (μέτρα με συμβολόμετρο, σημάδευε με κιμωλία, κόβε με τσεκούρι

). Το βασικό πλεονέκτημα που βλέπω στην μέθοδο τού Dawson είναι στην ενδεχόμενη απόδοση και αμφιβάλω αν αυτή είναι σημαντική ή αν σε ειδικές περιπτώσεις δεν υπάρχουν ακόμα καλύτερες λύσεις. Σε κάθε περίπτωση βέβαια ο ισομορφισμός αυτός τών «πραγματικών» (κινητής υποδιαστολής) με τών «ακεραίων» είναι πολύ χρήσιμο να την έχει υπόψιν του κάποιος που προγραμματίζει σε C.
έγραψε:
Floating point math is never simple.
Την C φυσικά δεν θα την πείραζα αλλά αν σχεδίαζα ο ίδιος μια αλά Mathematica γλώσσα η λύση μου θα ήταν πολύ πιο απλή. Ενώ θα ήθελα να παρέχονται αυτοματοποιημένα εργαλεία (που η ακρίβεια θα είναι αυτοματοποιημένη αλλά και να την καθορίζει ο χρήστης αν θέλει, όταν ο υπολογιστής θα έβλεπε ένα == (ή ένα != ) με αίτημα επιστροφής True ή False και να συγκρίνονται «πραγματικοί» (και όχι ακέραιοι, ρητοί ή συμβολικοί πραγματικοί) ο υπολογιστής να δίνει ένα WARNING. Δεν θα επιχειρούσα καμμία προηγμένη λύση, και δεν θα το απαγόρευα τελείως μόνο και μόνο γιατί δεν μού αρέσει να απαγορεύω πράγματα.