Δευτέρα, 27 Νοεμβρίου 2017

Αναθεώρηση 14 (Έκδοση 9.0)

Σε αυτή την αναθεώρηση η Μ2000 ήρθε στη πιο καλή μορφή της. Μπήκε ένας νέος διακόπτης ο οποίος αλλάζει με τρόπο τα προθέματα των μεταβλητών στα τμήματα (modules) (το μέρος που δεν φαίνεται) ώστε να μικραίνουν και αυτό βοηθάει σε δυο τομείς, στην ταχύτητα όταν έχουμε μεγάλα ονόματα, και στην ασφάλεια γιατί ποτέ δεν θα συμπίπτει πρόθεμα και όνομα μεταβλητής να βγει σε δυο μεταβλητές (στον απλό τρόπο γίνεται). Εξ ορισμού όμως η Μ2000 δουλεύει στον απλό τρόπο, επειδή ένα πλεονέκτημα, ότι μπορεί κανείς να βλέπει κανονικά ονόματα τμημάτων στην φόρμα έλεγχου.
Στο παρακάτω πρόγραμμα εκτελούνται και οι δυο τρόποι. Στην πρώτη περίπτωση με -SEC (security), η alfa θα γίνει 100 μέσα στο b, αλλά επειδή υπάρχει ήδη η b.alfa θα αλλάξει τιμή στην alfa του αρχικού b. Αν βάλουμε την local alfa=100 στη θέση της alfa=100 δεν έχουμε θέμα.
Στη δεύτερη περίπτωση αλλάζει πλάνο ο μεταφραστής και εδώ δεν υπάρχει θέμα.
Γράψτε το πρόγραμμα σε ένα τμήμα Α και τρέξτε το με δοκική Α
Μπορεί εύκολα να γίνει με ελληνικές εντολές. Στο διορθωτή κάνουμε κλίκ σε μια μπλε λέξη και ανοίγει η βοήθεια και μας δείχνει την ελληνική λέξη. Με F5 μπορούμε να κάνουμε αλλαγές σε όλο το τμήμα (υπάρχει και πολλαπλό UNDO)

            set switches "-SEC"
            Module b {
                  alfa=50 : Module c { Module b {alfa=100} : b } : c : Print alfa
            }
            b   \\ print 100
            set switches "+SEC"
            Module b {
                  alfa=50 : Module c { Module b {alfa=100} : b } : c : Print alfa
            }
            b   \\ print 50