Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> Προγραμματισμός Υπολογιστών Γλώσσες

Πώς να μετατρέψετε ένα πρόγραμμα Lisp σε Macro ME10

CoCreate είναι η Hewlett Packard 2D CAD - Computer Aided Design - πακέτο λογισμικού. Μηχανικοί το χρησιμοποιήσετε για το σχεδιασμό νέων τμημάτων . Η γλώσσα μακροεντολών που έρχεται με CoCreate ονομάζεται ME10 . Με την πρώτη ματιά , ME10 είναι πολύ διαφορετική από τη γλώσσα LISP AI . Η πληθώρα των παρενθέσεων που είναι τόσο χαρακτηριστική της LISP είναι σχεδόν απουσία σε ME10 . Με μια πιο προσεκτική εξέταση , ωστόσο , αποδεικνύεται ότι οι κύριοι φορείς σε ME10 είναι " ορίζουν ", " θηλιά " και " ας ", που είναι και οι φορείς αρχή LISP . Εκτός από επιφανειακές εμφανίσεις , LISP και ME10 είναι πραγματικά αρκετά παρόμοια . Οδηγίες
Η 1

Μετατροπή ορισμούς συναρτήσεων σε LISP να λειτουργήσει ορισμούς σε ME10 . Ορισμούς συναρτήσεων σε LISP είναι κάπως έτσι: (καθορίστε το όνομα ( παράμετροι ) ABC ) , και το αντίστοιχο κώδικα σε ME10 θα ξεκινήσει με μια γραμμή που έχει « καθορίσει το όνομα » και τελειώνει με μια γραμμή που έχει τη λέξη-κλειδί Κάθε παράμετρος είναι " end_define . " εισηγμένες σε ξεχωριστή γραμμή με τη λέξη-κλειδί " παράμετρο" και το όνομα της παραμέτρου . Οι οδηγίες Α, Β και Γ, θα είναι στην ίδια σειρά με ME10 όπως ήταν σε LISP 2

Αλλαγή οδηγίες βρόχο σε LISP που μοιάζει με αυτό : . ( Loop ABC ) . Σε ME10 , βρόχους ξεκινά με μια γραμμή που έχει τη λέξη-κλειδί " βρόχος" και τελειώνουν με τη λέξη-κλειδί " end_loop " σε μια γραμμή από μόνη της. Υπάρχουν πολλοί τρόποι για την έξοδο από ένα βρόγχο σε LISP , αλλά μόνο ένας τρόπος με τον ME10 . Είναι αρκετά εύκολο να μετατρέψετε τις αποδράσεις από έναν βρόχο LISP στην έξοδο από το βρόχο ME10 , που πάντα μοιάζει με αυτό: " . Exit_if κατάσταση»
εικόνων 3

Ξαναγράψτε "ας" δηλώσεις LISP . Λειτουργούν ακριβώς όπως τα "ας" δηλώσεις ME10 , εκτός από τη σύνταξη είναι λίγο διαφορετική . Στην LISP το "ας" δηλώσεις μοιάζουν με αυτό : ( ας a1 a2 b1 b2 c1 c2 ) . Αυτό προκαλεί α2 να είναι δεσμευμένη με a1 , b2 να είναι δεσμευμένη με b1 και c2 να είναι δεσμευμένη με c1 . Σε ME10 , θα υπάρχουν τρεις διαφορετικές γραμμές : " ας a1 a2 " , " ας b1 b2 " και " ας c1 c2 . "
Η 4

Να θυμάστε ότι σε LISP μια μεταβλητή δεν χρειάζεται να δηλωθεί πριν χρησιμοποιηθεί . Αυτό δεν είναι αλήθεια, στις περισσότερες γλώσσες - συμπεριλαμβανομένων ME10 . Αν μια μεταβλητή δεν έχει δηλωθεί σε ένα "ας" ή " παράμετρος " δήλωση LISP , θα πρέπει να δηλωθεί στην ME10 . Ο ευκολότερος τρόπος να γίνει αυτό είναι να δηλώσει X με μια γραμμή που λέει " τοπική Χ» πριν εμφανιστεί το Χ σε οποιαδήποτε άλλη δήλωση .
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα