Νομίζω ότι όλες οι περιπτώσεις που αναφέρατε παραβιάζουν το κριτήριο της καθοριστικότητας. Για παράδειγμα, πολλές γλώσσες προγραμματισμού θα επιτρέψουν μια εντολή Α <- Β + 2 όταν το Β δεν έχει πάρει τιμή, και θα βάλουν στο Α ό,τι σκουπίδια υπάρχουν στη θέση μνήμης του Β συν 2. Δηλαδή η πράξη έγινε, αλλά υπάρχουν αμφιβολίες για τον τρόπο εκτέλεσής της, δηλαδή τι τιμή απέδωσε τελικά στο Α.
Το ίδιο και στην προσπέλαση πινάκων εκτός ορίων, η πράξη πιθανώς να εκτελεστεί αλλά να επηρεαστούν άλλες μεταβλητές (ή να κολλήσει ο Η/Υ σαν sideeffect). Π.χ. αν στην Pascal δηλώσω
var
A: array[1..10] of integer;
i: integer;
και μετά πω A[11] := 5,
τότε το i θα γίνει 5!
(θα πρέπει βέβαια να έχω απενεργοποιημένο το range checking).
Δε νομίζω ότι παραβιάζεται η αποτελεσματικότητα. Οι εντολές είναι απλές και εκτελέσιμες. Όμως υπάρχουν αμφιβολίες για τον τρόπο εκτέλεσής τους (=καθοριστικότητα).
BTW, αν δε θέλετε να δημιουργήσετε λογαριασμό στο στέκι, δε βάζετε τουλάχιστον το μικρό σας όνομα όταν στέλνετε ένα μήνυμα, για να μη βλέπουμε ΕΠΙΣΚΕΠΤΗΣ να ρωτά και ΕΠΙΣΚΕΠΤΗΣ να απαντά;