DedSec Project

apl — συγκεντρωτικός οδηγός — DedSec Project

apl — συγκεντρωτικός οδηγός APL Έννοια Η APL δουλεύει με arrays και συμβολικούς τελεστές, όπου rank και shape επηρεάζουν το αποτέλεσμα. Παράδειγμα πηγαίου κώδικα ή χρήσης Άσκηση με…

APL

Έννοια

Η APL δουλεύει με arrays και συμβολικούς τελεστές, όπου rank και shape επηρεάζουν το αποτέλεσμα.

Παράδειγμα πηγαίου κώδικα ή χρήσης

+/ 1 2 3 4

Άσκηση με συγκεκριμένο στόχο

Κάνε reduction σε vector και εξέτασε πώς η υλοποίηση παριστάνει τις διαστάσεις.

Έλεγχος και διάγνωση

Μην υποθέτεις ότι reduction σε έναν άξονα ισχύει όμοια για κάθε rank· καταγράφεις το shape.

Σημείωσε την είσοδο, το αναμενόμενο αποτέλεσμα και το πραγματικό αποτέλεσμα στην εγκατεστημένη έκδοση της APL. Αν ο κώδικας δεν είναι προσβάσιμος από το κινητό, κράτησε το παράδειγμα ως μη δοκιμασμένο και εξήγησε τη σημασιολογία αντί να ισχυριστείς επιτυχία. Κάνε μια δεύτερη δοκιμή που απομονώνει μόνο τον μηχανισμό της άσκησης και κράτησε ακριβές σφάλμα με τρόπο που να μην εκθέτει προσωπικά δεδομένα.

APL — Αναλυτικός οδηγός εξάσκησης

Ξεκίνησε από αληθινή σύνταξη

Το αρχικό παράδειγμα της APL είναι η μικρότερη αφετηρία. Διάβασε τη σειρά των πράξεων και τον τρόπο εμφάνισης, έπειτα επιβεβαίωσέ το στο σωστό περιβάλλον. Μην θεωρείς ότι η σύνταξη άλλης γλώσσας έχει ίδια σημασία.

⎕←'Hello, Ada!'

Περιβάλλον εκτέλεσης: Load in an APL interpreter (dialect dependent).. Έλεγξε έκδοση compiler/interpreter πριν τροποποιήσεις τον κώδικα και κράτησε την αρχική έξοδο. Δούλεψε σε προσωρινό κατάλογο, μακριά από πραγματικά δεδομένα.

Οδηγούμενο εργαστήριο

Για μια μήτρα κάνε reduction ανά άξονα και κατέγραψε rank και shape μετά από κάθε πράξη· scalar και διάνυσμα ενός στοιχείου διαφέρουν.

Δοκιμές ορίων

Ένα λανθασμένο σχήμα ή χαμένο glyph αλλάζει το πείραμα· έλεγξε κωδικοποίηση και διάλεκτο.

Προχωρημένη αποστολή

Φτιάξε ξεχωριστό αρχείο για το παραπάνω εργαστήριο και πειραματίσου με μία αλλαγή σε σειρά, σχήμα, τύπο, scope ή περιβάλλον, ανάλογα με τη APL. Καθόρισε invariant και σύγκρινε αναμενόμενη με πραγματική έξοδο. Αν κάτι διαφέρει, απομόνωσε το ελάχιστο παράδειγμα πριν μεγαλώσεις το πρόγραμμα.