Με αφορμή την κουβέντα εδώ
https://alkisg.mysch.gr/steki/index.php?topic=3641.msg37485#msg37485αλλά και άλλα συμβάντα που με έβαλαν σε σκέψεις, είπα να ανοίξω αυτή τη συζήτηση.
(θυμάμαι να έχουμε κουβεντιάσει το θέμα στιγμιαία πέρυσι, αλλά δεν μπορώ να βρω πού... οπότε σόρρυ αν επαναλαμβάνω το θέμα)
Η πλήρης αποτίμηση των λογικών εκφράσεων που έχει υιοθετήσει η ΓΛΩΣΣΑ (σε αντίθεση με τη μερική αποτίμηση), μόνο σε μπελάδες μου φαίνεται ότι μας βάζει και δεν έχω δει ποιο μπορεί να είναι το διδακτικό της πλεονέκτημα.
Όταν κάνουμε τη σειριακή αναζήτηση και "ανακαλύπτουμε" τον αλγόριθμο με τα παιδιά, ξεκινώντας από τη ΓΙΑ και καθώς την αλλάζουμε σε ΟΣΟ για τους γνωστούς λόγους, εκεί κάποιοι μαθητές πάρα πολύ συχνά αναφωνούν με χαρά "το βρήκα!" :
Διάβασε Χ
i<-1
Όσο i<=N και Α[i]<>X επανάλαβε
i <- i +1
τέλος_επανάληψης
Υπέροχη αλγοριθμική σκέψη μέσα από την απλότητά της!
Τότε βρίσκομαι στην πολύ δυσάρεστη θέση να απαντήσω ότι αυτό είναι σωστό, όμως ο τρόπος που έχει υλοποιηθεί η ΓΛΩΣΣΑ (γιατί άραγε; ) δε μας επιτρέπει να το γράψουμε και εξηγώ το γιατί. Αισθάνομαι πάντα ότι τη στιγμή εκείνη καταστρέφω κάτι παρά δημιουργώ

Και, εντάξει, για τη ΓΛΩΣΣΑ ας δεχτούμε ότι έτσι υλοποιήθηκε. Τι γίνεται με την ψευδογλώσσα; Μπορεί κανείς να ισχυριστεί ότι έτσι έχει "υλοποιηθεί" κι αυτή; (μεγάλος μπελάς κι αυτή η έρημη η ψευδογλώσσα έτσι αυστηρά που έχει "υλοποιηθεί" ή, έστω, "οριστεί" από το βιβλίο αλλά αυτό είναι άλλη συζήτηση)
Δηλαδή αν κάποιος έγραφε το παραπάνω ως αναζήτηση σε ψευδογλώσσα, θα του το έπαιρναν λάθος; Γιατί, οκ, αν το γράψει σε ΓΛΩΣΣΑ μπορείς να του πεις ότι "αφού όφειλες να έχεις μάθει τη ΓΛΩΣΣΑ, πρέπει να ξέρεις ότι δεν μπορεί να το κάνει". Αλλά η ψευδογλώσσα; Που υποτίθεται ότι είναι ένα μέσο πιο ελεύθερης καταγραφής ενός προσχεδίου της λύσης μου, θα με υποβάλλει κι αυτή σε τέτοιους περιορισμούς
υλοποίησης;
Και μια άσκηση που τη θεωρώ ωραία και πρωτότυπη για τη στιγμή που την πρωτοσυναντούν οι μαθητές:
"... κερδίζουν οι 10 πρώτοι και αν κάποιοι ισοβαθμούν στην τελευταία θέση να κερδίζουν όλοι"
Κατά τη γνώμη μου, ένας μαθητής που μετά την ταξινόμηση συνεχίζει κάπως έτσι
i<-11
ΟΣΟ i<=N ΚΑΙ Α[i]=A[10] ΕΠΑΝΑΛΑΒΕ
ΓΡΑΨΕ i
i <- i+1
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ήδη έχει κάνει ένα βήμα στην αναλυτικο-συνθετική του ικανότητα και στην αλγοριθμική του σκέψη. Δε θα ήθελα να χρειάζεται να του το μειώσω επισημαίνοντας ότι ο κώδικάς του θα "χτυπήσει" εξαιτίας ενός αψυχολόγητου περιορισμού της ΓΛΩΣΣΑΣ, και να του το φορτώσω με λογικές μεταβλητές και ελέγχους για ξεπεραστεί αυτή η δυσκολία. Πολλοί θα χάσουν και την ουσία του ερωτήματος ή το ενδιαφέρον για τη λύση, αν το βάρος των υπόλοιπων "μπιχλιμπιδιών" τους πέσει πολύ.
Αν δε, το έγραφε σε ψευδογλώσσα, τότε (δική μου άποψη είναι ότι) δεν θα είχα ούτε το δικαίωμα να του πω ότι θα "χτυπήσει". Δεν "χτυπάει" η ψευδογλώσσα. Δεν είναι καν για να τρέξει στον υπολογιστή. Βέβαια, έτσι που την ορίζει το βιβλίο, την έχει ανάγει -πολύ κακώς για μένα- σε γλώσσα προγραμματισμού (μπορούμε να την περνάμε κι από διερμηνευτή!). Και μάλιστα σε μια δίδυμη αδερφή της ΓΛΩΣΣΑΣ με εντελώς επουσιώδεις διαφορές. Κι αυτό βέβαια είναι ένα ολόκληρο διαφορετικό θέμα, στο οποίο πολλοί θα διαφωνούμε και είναι αυτό νομίζω που γέννησε τις μεγάλες μας διαφορές στο θέμα του περσινού Μαΐου. Η ψευδογλώσσα, έναντι στην ψευδογλώσσα
του βιβλίου, όπως έχει τονίσει και κάπου αλλού ο Ευριπίδης.