Μάθετε τον προγραμματισμό Lisp: Εισαγωγή, εκδόσεις και άλλα

Αποκάλυψη: Η υποστήριξή σας βοηθά στη διατήρηση της λειτουργίας του ιστότοπου! Κερδίζουμε ένα τέλος παραπομπής για ορισμένες από τις υπηρεσίες που προτείνουμε σε αυτήν τη σελίδα.


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

Η Lisp είναι μια οικογένεια γλωσσών προγραμματισμού, που σχεδιάστηκε για πρώτη φορά το 1958 και τελικά υλοποιήθηκε το 1961. Αυτό το καθιστά τη δεύτερη παλαιότερη γλώσσα που εξακολουθεί να χρησιμοποιείται, μετά το Fortran.

Αλλά ενώ το Fortran συνεχίζει να εξαφανίζεται σιγά-σιγά, η Lisp εξακολουθεί να είναι ένα πολύ σημαντικό μέρος του τοπίου της επιστήμης των υπολογιστών.

Το Lisp είναι μοναδικό με διάφορους τρόπους. Για ένα πράγμα, κάθε έκφραση στο Lisp είναι μια λίστα, ένας από τους δύο κύριους τύπους δεδομένων στη γλώσσα. (Αυτός είναι ο λόγος που ονομάζεται “Lisp.”)

Δεδομένου ότι ο ίδιος ο κώδικας μπορεί να αξιολογηθεί ως τύπος δεδομένων στη γλώσσα, η Lisp προσφέρεται για αναδρομή και ενδοσκόπηση.

Επιπλέον – σε αντίθεση με τις περισσότερες άλλες γλώσσες – ο κωδικός Lisp είναι μια αναγνώσιμη από τον άνθρωπο έκδοση της πραγματικής δομής δεδομένων, καθώς επεξεργάζεται από το υποκείμενο σύστημα Lisp.

Αυτό σημαίνει ότι υπάρχει υψηλός βαθμός ομοιότητας μεταξύ του πώς σκέφτεται ένας προγραμματιστής για ένα πρόγραμμα και του τι κάνει πραγματικά το πρόγραμμα «κάτω από την κουκούλα».

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

Contents

Αυτόνομες υλοποιήσεις Lisp

Είναι ένα σημάδι της χρησιμότητας του Lisp που υπάρχουν τόσες πολλές διαφορετικές εκδόσεις του. Αυτές περιλαμβάνουν αυτόνομες γλώσσες καθώς και γλώσσες ενσωματωμένες σε εφαρμογές. Θα συζητήσουμε και τα δύο παρακάτω.

Κοινή Lisp

Το Common Lisp είναι μια από τις πιο δημοφιλείς διαλέκτους του Lisp. Κυκλοφόρησε για πρώτη φορά το 1984 και έγινε πρότυπο ANSI μία δεκαετία αργότερα.

Ήταν μια βελτίωση στο Maclisp. Αλλά δεν ήταν η μόνη έκδοση Lisp που λειτουργούσε στο Maclisp. υπήρχαν αρκετοί άλλοι. Όμως, η δέσμευση της Common Lisp στην τυποποίηση το έκανε τελικά το πιο επιτυχημένο.

Κοινοί πόροι Lisp

Εάν σας ενδιαφέρει το Common Lisp, υπάρχουν πολλοί τρόποι να το μάθετε.

Βιβλία

Υπάρχουν πολύ λίγα διαδικτυακά σεμινάρια για το Common Lisp, οπότε αν θέλετε πραγματικά να μάθετε τη γλώσσα, θα πρέπει να συμβουλευτείτε ένα ή περισσότερα βιβλία. Ευτυχώς, υπάρχουν διαδικτυακές εκδόσεις πολλών από αυτές.

  • Common Lisp: Μια ευγενής εισαγωγή στον συμβολικό υπολογισμό
  • ANSI Common Lisp
  • Πρακτική κοινή Lisp
  • On Lisp: Προηγμένες τεχνικές για το κοινό Lisp
  • Επιτυχής Lisp: Πώς να κατανοήσετε και να χρησιμοποιήσετε το κοινό Lisp
  • Αντικειμενοστραφής προγραμματισμός στο COMMON Lisp: Οδηγός προγραμματιστή για το CLOS
  • Η τέχνη του πρωτοκόλλου μετα-στόχου
  • Lisp σε μικρά κομμάτια
  • Τα Στοιχεία της Τεχνητής Νοημοσύνης χρησιμοποιώντας το Common Lisp
  • Αφήστε πάνω από τη Λάμδα

Πολλά από τα πιο σημαντικά και με επιρροή βιβλία για τη Λισπ γράφτηκαν τη δεκαετία του 1970 και του 1980, και τώρα δεν έχουν εκτυπωθεί και είναι δύσκολο να βρεθούν. Αρκετά από αυτά τα βιβλία διατέθηκαν στο Διαδίκτυο και μπορείτε να βρείτε συνδέσμους για αυτά παρακάτω.

Διαδικτυακοί πόροι

Ιστορικού ενδιαφέροντος

Το Lisp είναι μια ιστορικά ενδιαφέρουσα γλώσσα. Η ανάπτυξή του συνδέεται στενά με την ανάπτυξη της Τεχνητής Νοημοσύνης και της μηχανικής μάθησης. Είναι επίσης μια από τις πιο μοναδικές γλώσσες κοινής χρήσης, με σύνταξη και εσωτερική λογική πολύ διαφορετική από τις περισσότερες άλλες γλώσσες.

Αυτές οι διαφορές αποτελούν μέρος των συνεχιζόμενων συζητήσεων στην κοινότητα της επιστήμης των υπολογιστών σχετικά με τη φύση του υπολογισμού και την κατάλληλη γραμματική για προγραμματισμό.

Όποιος αφιερώνει χρόνο για να μάθει το Common Lisp σήμερα θα πρέπει να το κάνει να εξερευνήσει μέρος της ιστορίας της γλώσσας.

  • Αναδρομικές συναρτήσεις συμβολικών εκφράσεων και ο υπολογισμός τους από μηχανή – Γράφτηκε το 1960, από τον John McCarthy. Αυτό είναι το πρωτότυπο έγγραφο που περιγράφει τι θα γινόταν Lisp.
  • Μια βάση για μια μαθηματική θεωρία του υπολογισμού – Ένα έγγραφο που γράφτηκε από τον McCarthy το 1961, εξερευνώντας πολλές από τις ιδέες από το έγγραφο «Recursive Functions». Δείτε επίσης το συνοδευτικό έγγραφο, Προς μια Μαθηματική Επιστήμη του Υπολογισμού.
  • Lisp – Σημειώσεις για το παρελθόν και το μέλλον του – Ο McCarthy έγραψε αυτό το άρθρο το 1980, 20 χρόνια μετά την κυκλοφορία του Lisp.
  • ΒΙΝΤΕΟ: Τεχνητή νοημοσύνη

Ο John McCarthy (1927-2011) ήταν μακρόχρονος καθηγητής Επιστήμης Υπολογιστών στο Πανεπιστήμιο του Στάνφορντ. Η αρχική του σελίδα είναι ένας θησαυρός ενδιαφέρων άρθρων για AI, Lisp, θεωρητική επιστήμη υπολογιστών και σχετικά θέματα.

Μάθετε Lisp

Δεν υπάρχουν πάρα πολλά διαδικτυακά σεμινάρια για το Common Lisp, καθώς υπάρχουν και για πιο δημοφιλείς γλώσσες, όπως PHP ή Ruby. Ωστόσο, υπάρχουν πολλά βιβλία στο Lisp που έχουν κυκλοφορήσει ως διαδικτυακές εκδόσεις.

Πολλά από αυτά γράφτηκαν στη δεκαετία του 1970 και του 80, αν και σίγουρα υπάρχουν και πιο σύγχρονοι πόροι.

  • On Lisp – Online έκδοση του εξαιρετικού βιβλίου του Paul Graham.
  • Common Lisp: Μια ευγενής εισαγωγή στον συμβολικό υπολογισμό
  • Lisp in Small Parts – Μια σειρά σύντομων μαθημάτων
  • Practical Common Lisp – Μια πλήρης ηλεκτρονική έκδοση του κλασικού εισαγωγικού βιβλίου με το ίδιο όνομα.
  • Land of Lisp – Ένας αστείος, ιδιοσυγκρατικός ιστότοπος και βιβλίο, που διδάσκει στους ανθρώπους πώς να χρησιμοποιούν το Lisp.
  • Μάθετε Common Lisp – Μάθετε X σε Y λεπτά, όπου X = Common Lisp.
  • ELM-ART Lisp Course – Μάθετε να χρησιμοποιείτε το Lisp με το Episodic Learner Model στο Adaptive Remote Tutor
  • Γρήγορη εκκίνηση Lisp
  • LispTutor Jr.
  • Χύτευση Spels στη Λισπ
  • Common Lisp: Μια διαδραστική προσέγγιση
  • Συμβουλές στυλ Lisp για τους αρχάριους
  • Οδηγός του Pascal Costanza για τη Λισαβόνα

Απαιτούμενη ανάγνωση:

  • Κατάσταση του κοινού οικοσυστήματος Lisp.
Αναφορά και τεκμηρίωση Lisp

Περισσότερο από τις περισσότερες άλλες γλώσσες, εάν αρχίσετε να εργάζεστε με το Lisp, θα πρέπει να συμβουλεύεστε συχνά το υλικό αναφοράς. Ακολουθούν μερικά από τα πιο συχνά χρησιμοποιούμενα έργα αναφοράς Common Lisp που διατίθενται στο Διαδίκτυο.

  • Κοινό Wikpook Lisp
  • Κοινή Lisp HyperSpec
  • Cliki: Το κοινό Lisp Wiki
  • Κοινοτική τεκμηρίωση LispWorks
  • Κοινό βιβλίο μαγειρικής Lisp
  • Google Common Lisp Style Guide – Πώς να γράψετε Common Lisp με τον τρόπο που το Google γράφει Common Lisp. (Γνωρίζατε καν ότι η Google έγραφε το Common Lisp;)
  • Κοινή Lisp η γλώσσα
Ειδικά θέματα στον προγραμματισμό Lisp

Η Lisp είναι, από μόνη της, μια αρκετά εξειδικευμένη γλώσσα. Εδώ είναι μερικοί πόροι για ιδιαίτερα εξειδικευμένα ζητήματα στο Common Lisp.

  • Παραδείγματα προγραμματισμού τεχνητής νοημοσύνης: Μελέτες περιπτώσεων στο Common Lisp – Δείτε επίσης το βιβλίο.
  • Κοινό σύστημα αντικειμένων Lisp
Εργαλεία Lisp

Εάν θέλετε να επιτύχετε οτιδήποτε από την ουσία με το Common Lisp, θα χρειαστείτε ένα μεγαλύτερο οικοσύστημα υποστήριξης γλώσσας – βιβλιοθήκες, πρόσθετα, εργαλεία ανάπτυξης, πλαίσια.

Ακολουθούν μερικά από τα πιο δημοφιλή εργαλεία που χρησιμοποιούν οι Lispers για να ολοκληρώσουν τα πράγματα.

  • ACL2 – Μια Υπολογιστική Λογική για Εφαρμογή Common Lisp
  • Reader Macros in Common Lisp – Οι Reader μακροεντολές σας επιτρέπουν να δημιουργήσετε εντελώς νέα σύνταξη πάνω από το Lisp
  • Quicklisp – Διαχείριση βιβλιοθήκης για το κοινό Lisp
  • Clack – Ένα περιβάλλον εφαρμογής Ιστού για το Common Lisp. Αρκετά πλαίσια εφαρμογών ιστού έχουν κατασκευαστεί πάνω από αυτό:
    • Αγριάνθρωπος
    • Νίνγκλ
    • Τριφύλλι
  • Parenscript – Μεταφράζει το κοινό Lisp σε Javascript
  • jscl – Ένας άλλος κοινός μεταγλωττιστής Lisp to JavaScript
  • Roswell – Πρόγραμμα εγκατάστασης γραμμής εντολών για το Common Lisp
  • CommonQT – Μια κοινή επέκταση Lisp για QtTools, παρέχοντας μια λύση GUI.
  • CLML – Κοινή βιβλιοθήκη μηχανικής εκμάθησης Lisp
  • MGL – Βιβλιοθήκη μηχανικής μάθησης Anoth
  • Antik – βιβλιοθήκη που παρέχει εργαλεία για τον επιστημονικό και μηχανικό υπολογισμό
  • Crane – ένα ORM για Common Lisp.
  • cl-dbi – Επίπεδο αφαίρεσης βάσης δεδομένων
  • CEPL – Βιβλιοθήκη γραφικών. (Ρίξτε μια ματιά στην εκτεταμένη σειρά εκπαιδευτικών βίντεο.)
  • Iron Clad – Εργαλεία κρυπτογραφίας.
  • SLIME – Το τυπικό IDE για Common Lisp.
Πολιτισμός και κοινότητα Lisp

Περισσότερο από οποιαδήποτε άλλη γλώσσα, η Lisp έχει τη δική της κουλτούρα – μοναδική παράδοση, χιούμορ και παράδοση. Μερικά από αυτά πηγαίνουν πίσω στις ρίζες τους στα τμήματα της πληροφορικής των πανεπιστημίων.

Επιπλέον, μερικά από αυτά σχετίζονται με την κουλτούρα των αρχών geek hacker και μερικά από αυτά είναι αποτέλεσμα των ιδιαιτεροτήτων της ίδιας της γλώσσας και των τύπων εφαρμογών για τις οποίες χρησιμοποιείται συνήθως.

Αν θέλετε πραγματικά να καταλάβετε τη Λισπ, δεν μπορείτε απλώς να μάθετε τη γλώσσα – πρέπει να μάθετε τον πολιτισμό και να γίνετε μέρος αυτής της (περίεργης και υπέροχης) κοινότητας.

  • Φόρουμ Lisp
  • Εργαστήριο για την Ψυχολογική Πραγματικότητα του Lisp
  • Αποσπάσματα για το Lisp
  • Μια συνομιλία με τον Alan Kay
  • Αιώνια φλόγα
  • Lisp Χιούμορ
  • Κοινή ταινία Lisp
  • Μουσικό βίντεο του Land of Lisp
  • Planet Lisp
  • Lisp Meetings – δείτε επίσης [@lispmeetings στο Twitter] (https://twitter.com/lispmeetings)

Απαιτούμενη ανάγνωση:

  • Gödel, Escher, Bach: An Eternal Golden Braid, του Douglas R. Hofstadter – Αυτό το βιβλίο δεν σχετίζεται άμεσα με τη Lisp (αν και μιλάει για αυτό λίγο). Αλλά είναι ένα εξαιρετικά σημαντικό πολιτιστικό και πνευματικό λίθο για άτομα σε έναν αριθμό διαφορετικών τομέων που κατοικεί η Lisp: τεχνητή νοημοσύνη, μηχανική μάθηση, μαθηματική λογική και αναδρομή. Αυτό το βιβλίο θα αλλάξει τον τρόπο που σκέφτεστε και θα καταλήξετε να σκέφτεστε περισσότερο σαν το είδος του ατόμου που χρησιμοποιεί το Lisp.
Κοινές υλοποιήσεις Lisp

Το Lisp είναι μια ιδέα και το Common Lisp είναι μια γλώσσα – δεν είναι μια συγκεκριμένη τεχνολογία. Τα παρακάτω είναι μερικές από τις πιο δημοφιλείς εφαρμογές του Common Lisp.

  • Clisp – GNU Clisp, μια εφαρμογή του ANSI Common Lisp
  • GCL – Μια άλλη κοινή εφαρμογή Lisp
  • CMUCL – μια δωρεάν εφαρμογή Common Lisp υψηλής απόδοσης. Περιλαμβάνεται το πρόγραμμα επεξεργασίας Hemlock.
  • Allegro CL
  • Clozure Common Lisp
  • Steel Bank Common Lisp
Βίντεο

Μάθετε για το Lisp παρακολουθώντας. Αυτά τα βίντεο ξεκινούν από το βασικό σεμινάριο έως τις σε βάθος εξερευνήσεις της λογικής και της φιλοσοφίας της Lisp.

  • Σκέψη σαν προγραμματιστής Lisp
  • Practical Common Lisp – Google Tech Talk
  • Μια σύντομη εισαγωγή στο Lisp
  • Lisp – Google Tech Talk
  • Common Lisp: γιατί οι μακροεντολές είναι υπέροχες
  • Common Lisp – Πώς να ξεκινήσετε ένα νέο έργο
  • Διαδραστική ανάπτυξη παιχνιδιών με κοινή γεύση
  • LiveCoding στο CommonLisp
  • Ο Πάτρικ Στάιν στο Vimeo
  • Κοινά μαθήματα Lisp από τους Baggers

Σχετικές γλώσσες και διάλεκτοι

Το Lisp δεν είναι μια ενιαία γλώσσα, αλλά μια οικογένεια γλωσσών – μια ιδέα για το πώς να κάνετε προγραμματισμό υπολογιστών. Το Common Lisp είναι η πιο δημοφιλής εφαρμογή του Lisp, αλλά υπάρχουν και πολλά άλλα.

Οι κύριες διάλεκτοι του Lisp είναι:

  • Σχέδιο – Το Σχέδιο είναι ο κορυφαίος «ανταγωνιστής» του Common Lisp.
  • Clojure – Το Clojure είναι μια διάλεκτος Lisp που κερδίζει σήμερα δημοτικότητα. Είναι κατασκευασμένο για εκτέλεση στην εικονική μηχανή Java.

Συχνές ερωτήσεις σχετικά με το Lisp

Τι είναι το Lisp?

Το Lisp είναι μια οικογένεια γλωσσών προγραμματισμού υπολογιστών που αναπτύχθηκαν για πρώτη φορά στα τέλη της δεκαετίας του 1950. Το Lisp σημαίνει Λιαγ Πρocessing, ένα όνομα που αναφέρεται στο γεγονός ότι οι γλώσσες χρησιμοποιούν λίστες ως κύρια δομή δεδομένων, καθώς και για τη σύνταξη προγραμματισμού.

Τι είναι το κοινό Lisp?

Το Common Lisp είναι μια διάλεκτος του Lisp που αναπτύχθηκε στις αρχές της δεκαετίας του 1980, ως μια προσπάθεια να δημιουργηθεί μία (κοινή) έκδοση του Lisp. Είναι μια από τις δύο πιο δημοφιλείς εκδόσεις της γλώσσας (μαζί με το Σχέδιο).

Σε ποιες περιπτώσεις χρησιμοποιείται το Lisp?

Το Lisp μπορεί να χρησιμοποιηθεί για οποιονδήποτε τύπο εφαρμογής, αλλά παρουσιάζει ιδιαίτερο ενδιαφέρον για την Τεχνητή Νοημοσύνη, τη μηχανική μάθηση και άλλες μορφές προηγμένου προγραμματισμού που απαιτούν αναδρομική λογική.

Γιατί το Lisp είναι δημοφιλές με την Τεχνητή Νοημοσύνη?

Υπάρχουν τουλάχιστον δύο λόγοι για αυτό.

Πρώτον, η κύρια δομή δεδομένων της Lisp (η λίστα) είναι επίσης η δομή της σύνταξης προγραμματισμού της. Δηλαδή, τα δεδομένα και οι οδηγίες σχετικά με τα δεδομένα έχουν την ίδια μορφή. (Αυτό ονομάζεται ομοιογονικότητα.)

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

Ένας δεύτερος λόγος για τη δημοτικότητα της Lisp στο AI είναι ότι η σύνταξη ελέγχου για τη γλώσσα είναι στενά ανάλογη με την υπολογιστική λογική που την διέπει. Αυτό δίνει στους προγραμματιστές Lisp μια πολύ βαθύτερη εικόνα για το πώς ένας υπολογιστής ερμηνεύει πραγματικά τη λογική και τη σύνταξη του προγράμματος από ό, τι είναι δυνατό με άλλες γλώσσες.

Clojure

Το Clojure είναι μια σχετικά νέα (2007) γλώσσα προγραμματισμού. Πρόκειται για μια διάλεκτο του Lisp, που έχει σχεδιαστεί για να λειτουργεί με την εικονική μηχανή Java.

Τι είναι η εικονική μηχανή Java?

Το JVM είναι ένας εικονικός υπολογιστής που μεταγλωττίζει και εκτελεί Java και άλλες γλώσσες. Το JVM είναι μια ιδέα, όχι ένα συγκεκριμένο λογισμικό – μία από τις πιο δημοφιλείς εφαρμογές του JVM είναι το HotSpot από την Oracle.

Η ιδέα πίσω από το Java και το JVM είναι ότι μπορείτε να γράψετε ένα πρόγραμμα στην Java (ή σε άλλη υποστηριζόμενη γλώσσα) και να το μεταγλωττίσετε για το JVM. Στη συνέχεια, μπορείτε να το εκτελέσετε σε οποιονδήποτε υπολογιστή που εκτελεί JVM. Αυτό το καθιστά εξαιρετικά φορητό – μπορείτε να γράψετε κώδικα μία φορά και να τον εκτελέσετε οπουδήποτε.

Clojure: Lisp στο JVM

Η Java είναι παντού, πράγμα που σημαίνει ότι οι εικονικές μηχανές Java είναι παντού. Η δημιουργία μιας έκδοσης του Lisp που τρέχει στο JVM κατέστησε δυνατή την εκτέλεση του Lisp οπουδήποτε. Αυτό ήταν το πρωταρχικό κίνητρο για τη δημιουργία του Clojure και ένας εξαιρετικός λόγος για να μάθεις τη γλώσσα.

Ένα άλλο πλεονέκτημα είναι ότι το Clojure παρέχει πρόσβαση, μέσω του JVM, σε αμέτρητα εργαλεία και βιβλιοθήκες τρίτων που είναι γραμμένες στην Java. Αυτό δίνει στο Clojure ένα οικοσύστημα ανάπτυξης που είναι πιο ισχυρό από εκείνο που υπήρχε προηγουμένως σε οποιαδήποτε διάλεκτο Lisp.

Μαθήματα Clojure

  • Ξεκινώντας με το Clojure και την εισαγωγή στο Clojure παρέχετε μια σαφή, γρήγορη εισαγωγή στη γλώσσα.
  • Ο προγραμματισμός Clojure είναι ένα εκτεταμένο ανοιχτό λογισμικό wikibook στη γλώσσα.
  • Μάθετε X σε Y λεπτά, όπου X = clojure είναι μια καλή εισαγωγή στη γλώσσα για άτομα με υπάρχουσες δεξιότητες προγραμματισμού σε άλλες γλώσσες.
  • Clojure – Ο λειτουργικός προγραμματισμός για το JVM είναι ένα αναλυτικό σεμινάριο που απευθύνεται σε προγραμματιστές Java.
  • Το Clojure Language είναι μια σειρά εκπαιδευτικών βίντεο 25 μερών που εισάγει τη γλώσσα.
  • Το Clojure Distilled είναι ένα υποχρεωτικό σεμινάριο / δοκίμιο που δεν καλύπτει μόνο τη σύνταξη και το λεξιλόγιο της γλώσσας, αλλά τη φιλοσοφία πίσω από αυτήν. προσπαθεί να αποστάξει τον τρόπο με τον οποίο οι προγραμματιστές της Clojure σκέφτονται για προβλήματα και διερευνά έναν τρόπο επίλυσης προβλημάτων που πιθανότατα θα είναι νέο για προγραμματιστές που προέρχονται από άλλες γλώσσες.
Άλλοι πόροι για την εκμάθηση Clojure
  • Δοκιμάστε το Clojure, είναι ένας διαδικτυακός διερμηνέας Clojure, που σας επιτρέπει να αποκτήσετε κάποια εμπειρία Clojure στο πρόγραμμα περιήγησης πριν το εγκαταστήσετε τοπικά.
  • Το ClojureTV έχει εκπαιδευτικά βίντεο και ζωντανές συζητήσεις για διάφορα θέματα ανάπτυξης του Clojure.
  • Το 4clojure είναι ένας διαδραστικός ιστότοπος μάθησης με ασκήσεις προγραμματισμού στο Clojure.
  • Το Full Disclojure είναι ένα άλλο κανάλι βίντεο με πολλά υπέροχα βίντεο εκμάθησης Clojure.
  • Ένας οδηγός Clojure Newbie είναι ένας χρήσιμος πόρος που δείχνει τον νέο προγραμματιστή Clojure σε όλα τα απαραίτητα εργαλεία και πόρους που αποτελούν το οικοσύστημα Clojure.

Υλικό αναφοράς Clojure

  • Ο Οδηγός στυλ Clojure είναι ένας κοινοτικός οδηγός για βέλτιστες πρακτικές για τη σύνταξη σαφούς, διατηρήσιμου κώδικα Clojure.
  • Το ClojureDocs και το Grimoire είναι και οι δύο ανεπίσημοι σύντροφοι στην επίσημη τεκμηρίωση, παρέχοντας σχόλια και παραδείγματα που προέρχονται από την κοινότητα.
  • Το Clojure Cheatsheet είναι μια γρήγορη σελίδα αναφοράς για όλα τα μικρά πράγματα που απλά πρέπει να θυμάστε.

Κοινότητα και συνεχής μάθηση

  • Το Clojure Subreddit είναι ένα πολύ ενεργό φόρουμ για να κάνετε ερωτήσεις και να αλληλεπιδράτε με την κοινότητα του Clojure.
  • Το Clojure Google Group and Mailing List είναι ένα καλό μέρος για να κάνετε ερωτήσεις και να λάβετε υποστήριξη για την ανάπτυξη Clojure.
  • Το Disclojure είναι ένας δημοφιλής ιστότοπος για ειδήσεις και εκδηλώσεις Clojure.
  • Το Planet Clojure συγκεντρώνει τα πιο σημαντικά άρθρα από τα κορυφαία blogs Clojure.

Βιβλία για το Clojure

Υπάρχουν πολλά βιβλία για το Clojure. Εδώ είναι αυτά που η κοινότητα Clojure συνιστά ξανά και ξανά:

  • Το Clojure for the Brave and True (2015), του Daniel Higginbotham, είναι ένας απαραίτητος οδηγός για τη γλώσσα. Είναι επίσης διαθέσιμο για ανάγνωση δωρεάν στο διαδίκτυο και αποτελεί τη βάση για έναν φανταστικό ιστότοπο γεμάτο πόρους Clojure.
  • Το βιβλίο μαγειρικής Clojure (2014), των VanderHart και Neufeld, είναι μια συλλογή από συνταγές και ιδέες Clojure. Είναι διαθέσιμο ως έντυπο βιβλίο και έργο ανοιχτού κώδικα στο GitHub.
  • Το Pragmatic Bookshelf διαθέτει πολλά εξαιρετικά βιβλία για το Clojure:
    • Προγραμματισμός Clojure (2012), από τους Halloway και Bedra.
    • Mastering Clojure Macros: Γράψε Cleaner, Faster, Smarter Code (2014), από τον Colin Jones.
    • Clojure Applied: From Practice to Practitioner (2015), από τους Vandgrift και Miller.
    • Ανάπτυξη ιστού με Clojure: Δημιουργία αλεξίσφαιρων εφαρμογών ιστού με λιγότερο κώδικα (2016), από τον Ντμίτρι Σότνικοφ.
  • Practical Clojure (2010), από τους VanderHart και Sierra, και το Pragmatic Bookshelf’s Programming Clojure (που αναφέρθηκε παραπάνω) ήταν τα πρώτα δύο βιβλία που δημοσιεύθηκαν για τη γλώσσα Clojure. Το βιβλίο Pragmatic περιέχει περισσότερα και καλύτερα δείγματα κώδικα, ενώ αυτό το βιβλίο από την Apress έχει πιο συνεκτικές εξηγήσεις. Αυτά τα δύο βιβλία θέτουν τον τόνο για το πώς σκέφτονται οι περισσότεροι προγραμματιστές του Clojure για τη γλώσσα και, ως εκ τούτου, θα πρέπει να διαβαστούν από όποιον ενδιαφέρεται να μάθει.
  • Ο προγραμματισμός Clojure (2012), από τους Emerick, Carper και Grand, είναι μια πολύ σαφής εισαγωγή στη γλώσσα, ειδικά για άτομα που προέρχονται από γλώσσες προγραμματισμού και σεναρίων προσανατολισμένες στον Ιστό, όπως PHP και Python.
  • Το Living Clojure (2015), του Carin Meier, είναι ένας πολύ πρακτικός οδηγός για τη γλώσσα, με τη χρήσιμη υπόθεση ότι ο αναγνώστης κατανοεί τον προγραμματισμό γενικά. Το βιβλίο περιλαμβάνει ένα δομημένο πρόγραμμα μάθησης που έχει σχεδιαστεί είτε για αυτοδιδασκαλία είτε για εταιρική εκπαίδευση.

Πρέπει να μάθω Clojure?

Πιθανώς.

Είναι μια ευρέως αποδεκτή αλήθεια ότι κάθε προγραμματιστής πρέπει να μάθει το Lisp, παρόλο που πιθανώς δεν θα το χρησιμοποιήσετε. Αλλά τώρα που η δύναμη του Lisp έχει συνδυαστεί με την πανταχού παρούσα Java, είναι μια γλώσσα που είναι καλή για μάθηση και εξαιρετικά χρήσιμη.

Οι καλοί προγραμματιστές Clojure είναι ιδιαίτερα περιζήτητοι και καλοπληρωμένοι και η γλώσσα αυξάνεται σε δημοτικότητα.

Αν ψάχνετε για δεξιότητες προγραμματισμού που θα σας ξεχωρίσουν από άλλους προγραμματιστές, το Clojure είναι ένα από τα καλύτερα εργαλεία που μπορείτε να προσθέσετε στο κιτ σας – και στο βιογραφικό σας.

Σχέδιο

Εάν είστε λίγο μεγαλύτεροι και παρακολουθήσατε ένα εισαγωγικό μάθημα πληροφορικής στο γυμνάσιο ή το πανεπιστήμιο, είναι πιθανό ότι χρησιμοποιήσατε την καλή παλιά γλώσσα προγραμματισμού του προγράμματος στο συγκεκριμένο μάθημα.

Σύντομη ιστορία του προγράμματος

Για να κατανοήσουμε καλύτερα την ιστορία του Scheme, πρέπει να εξετάσουμε τα πολύ πρώιμα στάδια του σύγχρονου υπολογιστή. Η ανάπτυξη του προγράμματος επηρεάστηκε από δύο προηγούμενους, πολύ διαφορετικούς προκατόχους: τις γλώσσες προγραμματισμού Lisp και ALGOL.

Το Lisp δημιουργήθηκε το 1958 από τον Ινστιτούτο Τεχνολογίας της Μασαχουσέτης (MIT) John McCarthy. Το Σχέδιο προήλθε από το Lisp, χρησιμοποιώντας τη γενική σημασιολογία και τη σύνταξή του. Επιπλέον, το Σχέδιο δανείστηκε από την ALGOL. Είχε αναπτυχθεί από μια επιτροπή Ευρωπαίων και Αμερικανών επιστημόνων υπολογιστών σε μια συνάντηση το 1958, στην ETH Ζυρίχη. Το Σχέδιο χρησιμοποίησε τη δομή του μπλοκ και το λεξικό του πεδίο.

Το 1973, ο Guy L Steele του MIT και ο Gerald Jay Sussman ξεκίνησαν μια προσπάθεια να εφαρμόσουν το μοντέλο του Ηθοποιού Carl Hewitt στο Lambda calculus. Το έκαναν αυτό γράφοντας έναν μικρό διερμηνέα Lisp στο MacLisp και προσθέτοντας μηχανισμούς για τη δημιουργία ηθοποιών και την αποστολή μηνυμάτων. Κατά τη διάρκεια της δουλειάς τους, συνειδητοποίησαν ότι δημιούργησαν μια πολύ μικρή και ικανή διάλεκτο του Lisp, και το ονόμασαν Σχέδιο.

Το 2003, το εργαστήριο Scheme ξεκίνησε μια νέα διαδικασία τυποποίησης για το Σχέδιο, και τελικά κυκλοφόρησε το επικυρωμένο πρότυπο R6RS το 2006. Η τελευταία σταθερή έκδοση του Σχεδίου είναι επικυρωμένο πρότυπο R7RS από το 2013.

Χαρακτηριστικά σχεδίου

Το Σχέδιο είναι μια πρωτίστως λειτουργική γλώσσα προγραμματισμού, με λίστες ως κύρια δομή δεδομένων και υποστήριξη για λειτουργίες πρώτης κατηγορίας. Είναι μια απλή, μινιμαλιστική και εύκολη στην εφαρμογή γλώσσα προγραμματισμού. Αυτή η μινιμαλιστική φιλοσοφία οδήγησε σε μεγάλη απόκλιση μεταξύ των πρακτικών υλοποιήσεων του Σχεδίου, στο βαθμό που η Οργανωτική Επιτροπή του Σχηματισμού την αποκαλεί «την πιο ασήμαντη γλώσσα προγραμματισμού στον κόσμο» και «μια οικογένεια διαλέκτων» και όχι μία γλώσσα. Σε αντίθεση με προηγούμενα παράγωγα της Lisp με δυναμικό πεδίο εφαρμογής, το Scheme είναι λεξιλογικό (επιρροή από την ALGOL).

Στο Σχέδιο, τα μπλοκ υλοποιούνται με τις ακόλουθες κατασκευές: αφήνω, αφήνω* και γράμμα. Αυτή η δομή μπλοκ κληρονομείται επίσης από την ALGOL. Κατασκευή επανάληψης κάνω χρησιμοποιείται στο Σχέδιο, και παρέχεται επίσης υποστήριξη για επανάληψη χρησιμοποιώντας αναδρομή ουράς. Οι συνεχείς στο Σχέδιο είναι αντικείμενα πρώτης κατηγορίας και υποστηρίζονται από το κλήση-με-τρέχουσα-συνέχεια Διαδικασία σχήματος (επίσης γνωστή ως κλήση / cc). Στο Σχέδιο, όλα τα δεδομένα και οι διαδικασίες μοιράζονται έναν κοινό χώρο ονομάτων και η είσοδος και η έξοδος βασίζονται στο Λιμάνι Τύπος δεδομένων.

Ο αριθμητικός πύργος είναι ένα σύνολο πολύπλοκων και ορθολογικών αριθμητικών τύπων δεδομένων που καθορίζονται και εφαρμόζονται στο Σχέδιο. Η καθυστερημένη αξιολόγηση υποστηρίζεται στο Σχέδιο μέσω του καθυστέρηση μορφή και το δύναμη διαδικασία.

Εφαρμογές και χρήσεις προγράμματος

Λόγω της απλότητας και του μινιμαλισμού του, οι βιβλιοθήκες του Scheme έγιναν πολύ δημοφιλείς στους προγραμματιστές γλωσσών προγραμματισμού, στους εκπαιδευτικούς και στους χομπίστες. Αυτό είχε ως αποτέλεσμα πολλές διαφορετικές υλοποιήσεις και διάλεκτους του Σχεδίου. Ο παραδοσιακός βρόχος ανάγνωσης-εκτύπωσης σε στυλ Lisp υποστηρίζεται στις περισσότερες υλοποιήσεις του Σχήματος, και ορισμένοι συντάσσουν επίσης προγράμματα σχήματος σε εκτελέσιμα δυαδικά αρχεία.

Η απλότητα των εφαρμογών του Σχεδίου το καθιστά επίσης μια δημοφιλή επιλογή για την προσθήκη δυνατοτήτων δέσμης ενεργειών σε μεγαλύτερα συστήματα. Επιπλέον, οι εφαρμογές JScheme και Kawa του Scheme παρέχουν ενοποίηση με τάξεις Java.

Το Σχέδιο χρησιμοποιείται κυρίως στην εκπαίδευση. Σε πολλά εισαγωγικά μαθήματα επιστήμης υπολογιστών και σχεδιασμού προγραμμάτων για να καταδειχθούν τα βασικά του προγραμματισμού υπολογιστών. Άλλες αξιοσημείωτες χρήσεις του Σχεδίου περιλαμβάνουν τον εφευρέτη Εφαρμογών Google για Android, τον επεξεργαστή γραφικών GIMP, τη Σημασιολογία του Έγγραφο και τη Γλώσσα Προδιαγραφών (DSSSL) και ούτω καθεξής.

Σχέδιο μάθησης

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

Μαθήματα και πόροι προγράμματος

Δεδομένου ότι το Σχέδιο είναι μια μινιμαλιστική και απλοποιημένη γλώσσα προγραμματισμού, είναι σχετικά εύκολο να ελέγξετε. Με αυτά τα μαθήματα και τα μαθήματα, πιθανότατα θα μπορείτε να ξεκινήσετε τον προγραμματισμό στο Σχέδιο σε σύντομο χρονικό διάστημα.

  • Η δομή και η ερμηνεία των προγραμμάτων υπολογιστών είναι το εισαγωγικό μάθημα 6.001 του MIT με πολλούς χρήσιμους πόρους για το Σχέδιο, όπως διαλέξεις βίντεο, διαδικτυακά εγχειρίδια, έργα, μεταγραφές και επιλεγμένες σημειώσεις διαλέξεων.
  • Το DrScheme είναι ένα ολοκληρωμένο περιβάλλον ανάπτυξης (IDE) για τη συγγραφή, τον εντοπισμό σφαλμάτων και την ανάλυση προγραμμάτων Scheme, που χρησιμοποιείται επίσης στην εκπαίδευση.
  • Το Pilo Visual Tools for Scheme (PVTS) είναι μια βασική υλοποίηση διερμηνέα σχήματος με εργαλεία οπτικοποίησης. Είναι γραμμένο σε Java και έχει πολύ περιορισμένες δυνατότητες διερμηνέα, με μοναδικό σκοπό να εμφανίσει γραφικά τον κώδικα σχήματος ως βοηθητικό μάθησης.
  • Το Schemers.org έχει μια ωραία συλλογή τεκμηρίωσης και εισαγωγικών κειμένων για το Σχέδιο.
Βιβλία Σχέδιο

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

  • Δομή και ερμηνεία των προγραμμάτων υπολογιστών από Abelson, Sussman και Sussman είναι ένα εξαιρετικό βιβλίο επιστήμης των υπολογιστών που χρησιμοποιείται σε εισαγωγικά μαθήματα στο MIT. Αυτό είναι ένα από τα βιβλία του κόσμου Lisp και Scheme και είναι διαθέσιμο online δωρεάν, από το MIT Press.
  • Πώς να σχεδιάσετε προγράμματα: Μια εισαγωγή στον υπολογισμό και τον προγραμματισμό από τους Felleisen, Findler, Flatt και Krishnamurthi παρέχει μια πολύ ωραία εισαγωγή στη λογική προγραμματισμού. Είναι δωρεάν και διαθέσιμο στο διαδίκτυο, που εκδίδεται από το MIT Press.
  • Η γλώσσα προγραμματισμού του προγράμματος, τέταρτη έκδοση του R Kent Dybvig προορίζεται να παρέχει μια εισαγωγή στη γλώσσα προγραμματισμού του προγράμματος, αλλά όχι μια εισαγωγή στον προγραμματισμό γενικά. Είναι δωρεάν και διαθέσιμο στο διαδίκτυο, που εκδίδεται από το MIT Press.
  • Το Little Schemer – 4η Έκδοση των Friedman και Felleisen εισάγει τον υπολογιστή ως επέκταση της αριθμητικής και της άλγεβρας, και τα προγράμματα ως αναδρομικές λειτουργίες. Αυτό το βιβλίο δεν είναι δωρεάν.
  • Το Seasoned Schemer, επίσης, από τους Friedman και Felleisen, ενημερώνει τον αναγνώστη για πρόσθετες διαστάσεις του υπολογιστή: λειτουργεί ως τιμές, αλλαγή κατάστασης και εξαιρετικές περιπτώσεις. Αυτό το βιβλίο δεν είναι δωρεάν.
  • Πώς να χρησιμοποιήσετε το σχήμα: Σύνταξη σεναρίων και προγραμμάτων με PLT Scheme από τους Felleisen, Findler, Flatt, Krishnamurthi, Steckler θα σας παρουσιάσει μερικές πολύ βασικές ιδέες, όπως είσοδο και έξοδο αρχείων, σε πιο προηγμένα πράγματα, όπως απλό σχεδιασμό GUI και δέσμες ενεργειών Ιστού πτυχές του Σχεδίου. Διατίθεται δωρεάν στο Διαδίκτυο.

Το Σχέδιο είναι κατάλληλο για εσάς?

Το πρόγραμμα δεν είναι μόνο ένας καλός τρόπος για να μάθετε πώς να προγραμματίζετε, αλλά και ένας καλός τρόπος για να ξεκινήσετε τη μελέτη της επιστήμης των υπολογιστών. Αυτοί οι λόγοι θα σας οδηγήσουν στη σωστή κατεύθυνση.

Εφαρμογές εφαρμογής Lisp

Το Lisp είναι τόσο χρήσιμο που χρησιμοποιείται συχνά ως γλώσσα scripting για εφαρμογές. Τα δύο μεγαλύτερα είναι το πρόγραμμα επεξεργασίας κειμένου Emacs και η εφαρμογή AutoCAD με τη βοήθεια υπολογιστή (CAD). Θα δούμε και τα δύο παρακάτω.

Αυτόματη καταχώριση

Εάν χρησιμοποιείτε λογισμικό σχεδιασμού με τη βοήθεια υπολογιστή (CAD), όπως AutoCAD, Bricscad ή IntelliCAD, ενδέχεται κάποια στιγμή να χρειαστείτε πρόσθετες δυνατότητες προσαρμογής ή αυτοματοποίησης στο περιβάλλον CAD.

Εδώ μπαίνει το AutoLISP. Το AutoLISP είναι μια απλή, ελαφριά γλώσσα προγραμματισμού που έχει δημιουργηθεί ειδικά για χρήση με λογισμικό CAD.

Μια σύντομη ιστορία του AutoLISP

Το AutoLISP είναι μια διάλεκτος της γλώσσας προγραμματισμού Lisp, προσαρμοσμένη και εξορθολογισμένη για χρήση στο περιβάλλον AutoCAD.

Το Lisp είναι μια οικογένεια γλωσσών προγραμματισμού που χρονολογείται από το 1958. Το όνομα Lisp προέρχεται από το “List Processor” και οι συνδεδεμένες λίστες είναι μία από τις κύριες δομές δεδομένων της Lisp.

Το AutoLISP κυκλοφόρησε για πρώτη φορά στο AutoCAD έκδοση 2.18 του Autodesk το 1986 και βελτιώθηκε συνεχώς σε νέες κυκλοφορίες έως την κυκλοφορία του 13 το 1995, όταν το Autodesk διέκοψε την ανάπτυξη του AutoLISP υπέρ πιο σύγχρονων περιβαλλόντων ανάπτυξης όπως το VBA ή το .NET.

Παρ ‘όλα αυτά, το AutoLISP παρέμεινε η κύρια γλώσσα προσαρμογής για πολλούς χρήστες του AutoCAD.

Το 1997 η Autodesk κυκλοφόρησε το AutoCAD 14 και εισήγαγε το Visual Lisp ως εμπορικό πρόσθετο για το AutoCAD. Το Visual Lisp περιλαμβάνει ένα ολοκληρωμένο περιβάλλον ανάπτυξης (IDE), πρόγραμμα εντοπισμού σφαλμάτων και μεταγλωττιστή και υποστήριξη ActiveX.

Με την κυκλοφορία του AutoCAD 2000 το 1999, το Visual Lisp ενσωματώθηκε στο AutoCAD ως αντικατάσταση του AutoLISP. Από τότε, οι σημαντικές βελτιώσεις στο Visual Lisp έχουν σταματήσει από το Autodesk προκειμένου να επικεντρωθούν σε VBA, .NET και C++.

Το Visual Lisp και το AutoLISP εξακολουθούν να υποστηρίζονται στο AutoCAD έως σήμερα, ενώ η υποστήριξη για εκδόσεις VBA παλαιότερες από 7.1 έχει μειωθεί από τις 31 Ιανουαρίου 2014.

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

Γιατί οι χρήστες εξακολουθούν να χρησιμοποιούν το AutoLISP αντί για C++?

Εάν χρησιμοποιείτε την πλήρη έκδοση του Autodesk AutoCAD, ο μεταγλωττιστής AutoLISP περιλαμβάνεται ήδη στο AutoCAD και είναι έτοιμος για χρήση. Υπάρχει επίσης ένα ωραίο ενσωματωμένο IDE – Visual Lisp. Λάβετε υπόψη ότι οι εκδόσεις AutoCAD LT δεν έχουν ενσωματωμένη υποστήριξη για το AutoLISP.

Οι περισσότεροι χρήστες του AutoCAD, ή χρήστες παρόμοιων λύσεων CAD, δεν είναι εξοικειωμένοι με τις γλώσσες προγραμματισμού και προγραμματισμού, οπότε η εκμάθηση του C ++ για τη δημιουργία ενός απλού προγράμματος ή μιας λειτουργίας αυτοματοποίησης στο AutoCAD δεν θα ήταν πρακτική.

Το AutoLISP είναι απλό, απλοποιημένο και πολύ πιο εύκολο στη χρήση και εκμάθηση από το C ++ ή τη Visual Basic και όλα όσα χρειάζεστε για να ξεκινήσετε τον προγραμματισμό περιλαμβάνονται ήδη στο AutoCAD.

Τα προγράμματα και τα βοηθητικά προγράμματα που είναι γραμμένα στο AutoLISP είναι εύκολα προσβάσιμα και εκτελούνται από το AutoCAD. Αυτοί είναι οι κύριοι λόγοι που καθιστούν το AutoLISP την καλύτερη επιλογή για την προσαρμογή του AutoCAD από τους χρήστες του.

Χαρακτηριστικά AutoLISP

Το AutoLISP είναι μια ερμηνευτική γλώσσα, δεν συντάσσεται, επομένως μπορεί να αποθηκευτεί σε ένα αρχείο κειμένου ASCII, να φορτωθεί και στη συνέχεια να εκτελεστεί απευθείας στο AutoCAD.

Σχεδόν όλες οι λειτουργίες που εκτελείτε χειροκίνητα στο AutoCAD μπορούν να εκτελεστούν αυτόματα χρησιμοποιώντας το AutoLISP.

Το AutoLISP διαθέτει ένα πλούσιο σύνολο λειτουργιών που μπορείτε να χρησιμοποιήσετε για να εκτελέσετε οποιαδήποτε δραστηριότητα στο AutoCAD, όπως γενικές λειτουργίες προγραμματισμού για μεταβλητές χειρισμούς, έλεγχο αποφάσεων, βρόχους, αριθμητικές λειτουργίες, χειρισμός σφαλμάτων και χειρισμός λειτουργιών.

Έχει επίσης εξειδικευμένες λειτουργίες σε διάφορους τομείς όπως: γεωμετρία, έλεγχος οθόνης, ερώτημα και εντολή, είσοδος χρήστη και χειρισμός αντικειμένων.

Το AutoLISP διαθέτει επίσης μια γλώσσα ελέγχου διαλόγου, μια ενσωματωμένη μίνι γλώσσα GUI για τη δημιουργία τροπικών πλαισίων διαλόγου με την αυτοματοποιημένη διάταξη στο AutoCAD. Όλες οι πλατφόρμες που μπορούν να εκτελέσουν το AutoCAD υποστηρίζουν επίσης το AutoLISP.

Μάθηση AutoLISP

Υπάρχουν ορισμένοι παράγοντες που μπορούν να κάνουν τη μάθηση AutoLISP ευκολότερη.

Εάν είστε έμπειρος χρήστης του AutoCAD, η εκμάθηση του AutoLISP θα είναι ευκολότερη για εσάς. Το AutoLISP είναι ουσιαστικά ένας τρόπος ελέγχου του AutoCAD, οπότε όσο καλύτερα γνωρίζετε το AutoCAD, τόσο καλύτερα θα γνωρίζετε τι πρέπει να γίνει για να το ελέγχετε αυτόματα.

Εκμάθηση AutoLISP

Το AutoLISP είναι μια πολύ απλή γλώσσα για εκμάθηση και πιθανώς η πιο παραγωγική από τις διαφορετικές διεπαφές προγραμματισμού εφαρμογών (API) ενσωματωμένες στο AutoCAD. Με αυτά τα μαθήματα, πιθανότατα θα είστε έτοιμοι να γράψετε τα δικά σας χρήσιμα προγράμματα σε σύντομο χρονικό διάστημα.

  • Το AfraLISP διαθέτει μια εξαιρετική συλλογή δωρεάν μαθημάτων εκμάθησης AutoLISP και πόρων για αρχάριους, ενδιάμεσους και προχωρημένους χρήστες.
  • Ο επίσημος οδηγός προγραμματιστή AutoLISP της Autodesk παρέχει μια αναλυτική επισκόπηση των κύριων θεμάτων και των ροών εργασίας για τη χρήση της γλώσσας προγραμματισμού AutoLISP. Επίσης ενδιαφέρει την επίσημη αναφορά της λειτουργίας AutoLISP, η οποία σίγουρα θα είναι χρήσιμη κατά τον προγραμματισμό στο AutoLISP.
  • Το Mastering AutoLISP σε 80 λεπτά είναι μια παρουσίαση Power Point από το Augi CAD Camp 2005, δωρεάν για λήψη. Καλύπτει τα βασικά του AutoLISP και προορίζεται για ενδιάμεσους χρήστες του AutoCAD.
  • Η γρήγορη εκκίνηση του AutoLISP στο CADTutor.net απευθύνεται σε χρήστες του AutoCAD που θα ήθελαν να αρχίσουν να μαθαίνουν το AutoLISP.
  • Το πρώτο σας πρόγραμμα AutoLISP: Το Zoom to Origin είναι ένας σύντομος οδηγός που δείχνει τα βασικά στοιχεία της σύνταξης ενός σύντομου προγράμματος AutoLISP στο Visual Lisp Editor στο AutoCAD.
  • Ο Προγραμματισμός Lee Mac έχει ενδιαφέροντες πόρους για το AutoLISP, όπως σεμινάρια και πολλά λειτουργικά προγράμματα AutoLISP που μπορείτε να κατεβάσετε και να μελετήσετε.
Βιβλία AutoLISP

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

  • Προγραμματισμός AutoLISP: Οι αρχές και οι τεχνικές από τους Rawis και Hagen παρέχουν πρακτικές και εύκολες οδηγίες στη γνώση της γλώσσας προγραμματισμού AutoLISP.
  • Προσαρμογή πλατφόρμας AutoCAD: Διεπαφή χρήστη, AutoLISP, VBA και Beyond by Lee Ambrosius είναι ένας ολοκληρωμένος οδηγός για τον εξορθολογισμό και την εξατομίκευση της πλατφόρμας AutoCAD. Οι γλώσσες προγραμματισμού AutoLISP και VBA ανοίγουν πολλές επιλογές προσαρμογής και αυτό το βιβλίο παρέχει εξειδικευμένες οδηγίες για την εφαρμογή τους σε AutoCAD, Civil 3D, Plant 3D και άλλα προγράμματα που βασίζονται στην πλατφόρμα Autodesk AutoCAD.
  • Το Visual LISP του ειδικού του AutoCAD από τον Reinaldo Togores: δείχνει τεχνικές προγραμματισμού Lisp, συμπεριλαμβανομένης της χρήσης του Περιβάλλον Ολοκληρωμένης Ανάπτυξης του Visual Lisp, που εξηγείται από την αρχή.

Είστε έτοιμοι για αυτόματη καταχώριση?

Παρόλο που το AutoLISP προέρχεται από το Lisp, μια πολύ παλιά γλώσσα προγραμματισμού, το AutoLISP παραμένει ένα πολύτιμο εργαλείο για τους χρήστες του AutoCAD.

Το AutoLISP εξακολουθεί να είναι το εργαλείο επιλογής για προσαρμογή και αυτοματοποίηση στο AutoCAD και σε άλλο λογισμικό CAD με υποστήριξη AutoLISP.

Emacs Lisp

Εάν χρησιμοποιείτε το GNU Emacs ή οποιοδήποτε άλλο παρόμοιο πρόγραμμα επεξεργασίας κειμένου Emacs, πιθανότατα έχετε ακούσει για το Emacs Lisp. Το Emacs Lisp είναι η γλώσσα προγραμματισμού που χρησιμοποιείται για την ανάπτυξη και τον κώδικα των περισσότερων δυνατοτήτων επεξεργασίας του προγράμματος επεξεργασίας κειμένου GNU Emacs. Το Emacs Lisp αναφέρεται επίσης ως Elsip.

Ουσιαστικά, το Emacs Lisp χρησιμοποιείται για την προσαρμογή και επέκταση των δυνατοτήτων του προγράμματος επεξεργασίας κειμένου GNU Emacs.

Σύντομη ιστορία του Emacs Lisp

Το Emacs Lisp είναι μια μινιμαλιστική διάλεκτος της γλώσσας προγραμματισμού Lisp που χρησιμοποιείται στους επεξεργαστές κειμένου GNU Emacs και XEmacs. Το Lisp σημαίνει “List Processor” και αντιπροσωπεύει μια οικογένεια γλωσσών προγραμματισμού που χρονολογείται από το 1958.

Ο Richard Stallman, ο ιδρυτής του έργου GNU, δημιούργησε το πρόγραμμα επεξεργασίας κειμένου GNU Emacs.

Κυκλοφόρησε για πρώτη φορά το 1985, η έκδοση 13 του GNU Emacs παρουσίασε τη χρήση του Emacs Lisp ως δικής του γλώσσας επέκτασης. Ο Emacs Lisp εμπνεύστηκε σε μεγάλο βαθμό από τη διάλεκτο Maclisp της γλώσσας προγραμματισμού Lisp.

Η τελευταία σταθερή έκδοση του GNU Emacs είναι η έκδοση 24.5 και κυκλοφόρησε τον Απρίλιο του 2015.

Το Emacs Lisp είναι αναπόσπαστο μέρος του GNU Emacs και λειτουργεί σε όλες τις πλατφόρμες που υποστηρίζονται από GNU Emacs – GNU, GNU / Linux, FreeBSD, NetBSD, OpenBSD, Mac OS X, Microsoft Windows και Solaris.

Τόσο το Emacs Lisp όσο και το GNU Emacs είναι ανοιχτού κώδικα και δωρεάν. Δημοσιεύονται βάσει της άδειας GNU General Public License και ο πηγαίος κώδικας διατίθεται ελεύθερα για εξέταση, τροποποίηση και αναδιανομή..

Ποιος χρησιμοποιεί τους Emacs Lisp και GNU Emacs?

Με τα σύγχρονα Ολοκληρωμένα Περιβάλλοντα Ανάπτυξης (IDEs), η σύνταξη κώδικα σε ένα εξειδικευμένο πρόγραμμα επεξεργασίας κειμένου όπως το GNU Emacs μπορεί να φαίνεται πολύ περίεργο με την πρώτη ματιά.

Ωστόσο, για έναν έμπειρο χρήστη, το GNU Emacs έχει πολλές ισχυρές δυνατότητες επεξεργασίας κώδικα που δεν διαθέτουν τα περισσότερα σύγχρονα IDE.

Το GNU Emacs περιγράφεται ως επεκτάσιμος, προσαρμόσιμος, αυτο-τεκμηριωμένος, επεξεργαστής οθόνης σε πραγματικό χρόνο και σχεδόν όλες αυτές οι ισχυρές δυνατότητες προέρχονται από τον ενσωματωμένο διερμηνέα Emacs Lisp.

Τα σύγχρονα IDE εστιάζουν στο GUI και στα οπτικά στοιχεία και ελέγχονται κυρίως από το ποντίκι. Σε αντίθεση με αυτά, το GNU Emacs επικεντρώνεται στην εισαγωγή πληκτρολογίου και σε ισχυρές δυνατότητες επεξεργασίας κειμένου, επομένως είναι πιο κατάλληλο για προγραμματιστές που γράφουν καθαρό κώδικα από τα περισσότερα σύγχρονα IDE.

Κάθε δημοφιλής γλώσσα προγραμματισμού υποστηρίζεται στο GNU Emacs. Επιπλέον, το Emacs Lisp αποτελεί ένα ισχυρό εργαλείο για την επέκταση και την προσαρμογή του GNU Emacs.

Χαρακτηριστικά Emacs Lisp

Δεδομένου ότι η γλώσσα προγραμματισμού Emacs Lisp έχει σχεδιαστεί ειδικά για να χρησιμοποιείται σε έναν επεξεργαστή, παρέχει ειδικές δυνατότητες για ανάλυση και σάρωση κειμένου, χειρισμό υπο-διεργασιών, buffer, οθόνες, αρχεία και ούτω καθεξής. Οι εντολές επεξεργασίας είναι λειτουργίες που μπορούν να κληθούν από τα προγράμματα Emacs Lisp.

Τα χαρακτηριστικά του Emacs Lisp δείχνουν μια στενή σχέση με τη διάλεκτο του Maclisp. Το Emacs Lisp χρησιμοποιεί ένα δυναμικό εύρος από προεπιλογή, με υποστήριξη τόσο επιτακτικών όσο και λειτουργικών μεθόδων προγραμματισμού, εστιάζοντας στην παροχή δομών δεδομένων και χαρακτηριστικών ειδικά για τη χρήση του σε έναν ισχυρό επεξεργαστή κειμένου.

Το στατικό εύρος διατίθεται προαιρετικά από την έκδοση 24. Μπορεί να ενεργοποιηθεί ρυθμίζοντας τη μεταβλητή λεξική-δεσμευτική. Σημειώστε ότι το Emacs Lisp δεν υποστηρίζει βελτιστοποίηση ουράς-κλήσης, επομένως οι αναδρομές ουράς μπορούν να οδηγήσουν σε σφάλματα υπερχείλισης στοίβας.

Το Emacs Lisp μπορεί επίσης να χρησιμοποιηθεί ως γλώσσα δέσμης ενεργειών για το GNU Emacs, που καλείται από τη γραμμή εντολών ή από ένα εκτελέσιμο αρχείο, με όλες τις λειτουργίες επεξεργασίας διαθέσιμες στο πρόγραμμα.

Η διεπαφή χρήστη GNU Emacs δεν εμφανίζεται όταν εκτελείται σε παρτίδα με το Emacs Lisp που χρησιμοποιείται για δέσμες ενεργειών, επομένως συμπεριφέρεται περισσότερο σαν ένα τυπικό εργαλείο Unix.

Το αναπτυξιακό σας περιβάλλον

Για να ξεκινήσετε να χρησιμοποιείτε το Emacs Lisp, θα πρέπει να εγκαταστήσετε το πρόγραμμα επεξεργασίας κειμένου GNU Emacs. Είναι μια πολύ απλή διαδικασία.

Απλώς κατευθυνθείτε στη σελίδα λήψης του Gnu.org Emacs και ακολουθήστε τις οδηγίες για τη λήψη και την εγκατάσταση του GNU Emacs στο σύστημά σας. Το GNU Emacs υποστηρίζει τις ακόλουθες πλατφόρμες: GNU, GNU / Linux, FreeBSD, NetBSD, OpenBSD, Mac OS X, Microsoft Windows και Solaris.

Μάθηση Emacs Lisp

Φυσικά, η εκμάθηση του Emacs Lisp θα είναι ευκολότερη εάν έχετε προηγούμενη εμπειρία προγραμματισμού, ειδικά σε ορισμένες από τις λειτουργικές γλώσσες προγραμματισμού που προέρχονται από το Lisp.

Η γενική εμπειρία προγραμματισμού είναι επίσης ευπρόσδεκτη, επειδή οι βετεράνοι κωδικοποιητές τείνουν να γνωρίζουν τους εκδότες κειμένου / κώδικα από μέσα προς τα έξω.

Εκπαιδευτικά προγράμματα και πόροι Emacs Lisp

Το Emacs Lisp είναι μια μινιμαλιστική και εύχρηστη γλώσσα προγραμματισμού, αλλά λόγω της σχετικά περιορισμένης, εξειδικευμένης έκκλησής του, δεν υπάρχουν πολλοί διαδικτυακοί πόροι. Επιλέξαμε μερικά μαθήματα και πόρους εκμάθησης που θα πρέπει να είναι χρήσιμοι αν μόλις ξεκινήσετε με το Emacs Lisp:

  • Μια εισαγωγή στον προγραμματισμό στο Emacs Lisp από το Gnu.org απευθύνεται σε νέους χρήστες χωρίς προηγούμενη εμπειρία προγραμματισμού.
  • Το εγχειρίδιο αναφοράς GNU Emacs Lisp είναι μια πλήρης περιγραφή και αναφορά του Emacs Lisp. Αυτό το εγχειρίδιο προϋποθέτει ότι είστε άνετοι χρησιμοποιώντας το Emacs για επεξεργασία.
  • Το Elisp Cookbook περιέχει πολλά παραδείγματα κώδικα που δείχνουν βασικές λειτουργίες προγραμματισμού Emacs Lisp.
  • Το Emacs Lisp Wiki έχει συνδέσμους προς καλούς πόρους για να ξεκινήσετε με τον προγραμματισμό Emacs Lisp.
Βιβλία Emacs Lisp

Υπάρχουν επίσης πολλά βιβλία Emacs Lisp εκεί έξω. Μερικά από αυτά μπορεί να είναι πολύ χρήσιμα, αλλά εξακολουθούμε να προτείνουμε να δοκιμάσετε δωρεάν διαδικτυακούς οδηγούς και πόρους. Εάν χρειάζεστε περισσότερους πόρους, μπορείτε να αγοράσετε ένα ή δύο βιβλία.

  • Μια εισαγωγή στον προγραμματισμό στο Emacs Lisp από τον Robert J Chassell είναι ένα στοιχειώδες σεμινάριο για μη προγραμματιστές για να τους δείξει πώς να προσαρμόσουν το GNU Emacs χρησιμοποιώντας τη γλώσσα προγραμματισμού Emacs Lisp.
  • Emacs Lisp – Μια εισαγωγή του Robert J Chassell έχει σχεδιαστεί για να σας ξεκινήσει με το Emacs Lisp και να σας καθοδηγήσει στην εκμάθηση των βασικών αρχών του προγραμματισμού.
  • Σύνταξη GNU Emacs Extensions: Προσαρμογές επεξεργαστή και δημιουργίες με Lisp από τον Bob Glickstein θα σας δείξει τα πάντα, από απλές προσαρμογές έως εκτεταμένες λειτουργίες στο Emacs Lisp με ρεαλιστικά παραδείγματα.

Εάν χρησιμοποιείτε το Emacs, χρειάζεστε το Emacs Lisp

Το GNU Emacs σχεδιάστηκε ως πρόγραμμα επεξεργασίας κειμένου με υποστήριξη για προσαρμογές χρησιμοποιώντας το Emacs Lisp.

Ωστόσο, το GNU Emacs έγινε ένα σχεδόν πλήρες IDE χάρη στη δύναμη και την επεκτασιμότητα που παρέχεται από τη γλώσσα προγραμματισμού Emacs Lisp.

Είναι μια ισχυρή, αλλά εξαιρετικά εξειδικευμένη γλώσσα προγραμματισμού. Δεν είναι κάτι που πρέπει να κυριαρχήσει ο μέσος προγραμματιστής, αλλά σε ορισμένες εξειδικευμένες εφαρμογές, το Emacs Lisp εξακολουθεί να χρησιμοποιείται ευρέως και αυτό είναι απίθανο να αλλάξει σύντομα.

συμπέρασμα

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

Άλλα ενδιαφέροντα πράγματα

Έχουμε περισσότερους οδηγούς, σεμινάρια και γραφήματα που σχετίζονται με την κωδικοποίηση και την ανάπτυξη:

  • F # Προγραμματισμός: μάθετε για τον λειτουργικό προγραμματισμό στο πλαίσιο .NET.
  • Erlang Programming Εισαγωγή και Πόροι: μια πρώιμη λειτουργική γλώσσα που χρησιμοποιείται για τη δημιουργία παράλληλου κώδικα.
  • Java: Εισαγωγή, Τρόπος εκμάθησης και πόροι: ανατρέξτε στον λεπτομερή οδηγό μας για να γίνετε προγραμματιστής Java.
Τι κώδικα πρέπει να μάθετε?

Μπερδεμένοι με ποια γλώσσα προγραμματισμού πρέπει να μάθετε να κωδικοποιείτε; Ρίξτε μια ματιά στο infographic μας, τι κώδικα πρέπει να μάθετε?

Δεν συζητά μόνο διαφορετικές πτυχές των γλωσσών, αλλά απαντά σε σημαντικές ερωτήσεις όπως, “Πόσα χρήματα θα κάνω προγραμματισμό Java για τα προς το ζην;”

Τι κώδικα πρέπει να μάθετε;
Τι κώδικα πρέπει να μάθετε?

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map