DedSec Project

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

red — συγκεντρωτικός οδηγός Red Τι προσφέρει η γλώσσα Η Red συνδυάζει τη γλώσσα υψηλού επιπέδου Red με τη χαμηλότερου επιπέδου διάλεκτο Red/System. Δεν έχουν ίδιες δυνατότητες και…

Red

Τι προσφέρει η γλώσσα

Η Red συνδυάζει τη γλώσσα υψηλού επιπέδου Red με τη χαμηλότερου επιπέδου διάλεκτο Red/System. Δεν έχουν ίδιες δυνατότητες και περιορισμούς.

Μικρό παράδειγμα προς μελέτη

Red []
items: [10 20 30]
print length? items

Πρόσθεσε και αφαίρεσε στοιχείο από το block και σύγκρινε το πλήθος με τις επιμέρους τιμές.

Τι να επαληθεύσεις

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

Παγίδα ειδική για το θέμα

Το block της Red δεν είναι JSON array· η Red/System δεν είναι εναλλακτική εκτέλεση των ίδιων εκφράσεων.

Εργαστήριο εξάσκησης: Red

Εξέτασε το αρχείο εκκίνησης

Τα αρχεία Red αρχίζουν με Red [ ... ] που δηλώνει το πρόγραμμα και προαιρετικά metadata. Σε προσωρινό squares.red βάλε:

Red [Title: "Squares"]
numbers: [1 2 3]
foreach n numbers [
    print (n * n)
]

Προβλέπονται οι αριθμοί 1, 4, 9 σε ξεχωριστές γραμμές. Οι παρενθέσεις ομαδοποιούν τον πολλαπλασιασμό πριν την εκτύπωση. Δοκίμασε με συμβατή έκδοση Red και κατάγραψε την πραγματική εντολή εκτέλεσης· η υποστήριξη πλατφορμών ποικίλλει. Δεν δηλώνεται επιβεβαιωμένη εκτέλεση του συγκεκριμένου δείγματος.

Block και όχι συμβολοσειρά

Η numbers είναι block τιμών Red, όχι κείμενο "[1 2 3]". Η foreach δεσμεύει κάθε στοιχείο στη n. Αν χρησιμοποιήσεις [], δεν υπάρχει κανένας αριθμός για εκτύπωση. Πρόσθεσε μηδέν και αρνητική τιμή, γράφοντας πρώτα την πρόβλεψη για το τετράγωνό τους. Παρατήρησε ποιο τμήμα απλώς υπολογίζει και ποιο προκαλεί παρενέργεια στην κονσόλα.

Διαφορετικές αποτυχίες

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

Αυτόνομο έργο

Δημιούργησε word που επιστρέφει block τετραγώνων χωρίς εκτύπωση. Εξήγησε πού αποθηκεύεται το αποτέλεσμα και πώς το ελέγχει ο καλών. Δοκίμασε κενό block, διπλές τιμές και μεγάλους ακέραιους στο δικό σου runtime. Σημείωσε ακριβή έκδοση Red και λειτουργικό. Αναφορά: https://www.red-lang.org/

Red — Διαδρομή ουσιαστικής εξάσκησης

Εξειδικευμένες ασκήσεις με τεκμήρια

Σύγκρινε literal blocks με evaluated expressions σε Red REPL με αριθμητικά δεδομένα.

Γράψε function που επικυρώνει integer input και απορρίπτει μη αριθμητικά δεδομένα. Εξέτασε series operations σε λίστα τριών στοιχείων.

Φτιάξε μικρό VID UI με counter button όπου υποστηρίζεται και κατέγραψε διαφορές platform/backend.