Introduzione e funzionalità del linguaggio Lisp

AutoLISP è un dialetto semplificato del più famoso linguaggio LISP, acronimo di 'List Processing', cosa che denota una sua particolare predilezione per il trattamento delle liste. AutoLISP è stato sviluppato per essere utilizzato con le versioni complete di AutoCAD e con i suoi derivati, come AutoDESK Map 3D e Architectural Desktop.

Al contrario, nei prodotti della linea LT (AutoCAD LT), non è stato previsto alcun supporto ufficiale per questo linguaggio. Nonostante ciò, in commercio esistono alcuni plug-in che consentono l'uso di AutoLISP anche con AutoCAD LT (LT-Extender, LT Toolkit).

Funzionalità

AutoLISP è un linguaggio piccolo e dinamico e, al contrario di molti altri, il suo codice può essere eseguito immediatamente, senza la necessità di subire elaborazioni intermedie (es.: la compilazione), ciò è dovuto al fatto di essere un linguaggio interpretato. Al suo interno troviamo le caratteristiche base dell'originale LISP, unite ad una nutrita serie di funzioni specifiche per il trattamento dei dati geometrici e delle entità grafiche del CAD.

Le proprietà di tali entità sono viste, da AutoLISP, come liste associative contenenti i "codici di gruppo" definiti da AutoCAD assieme ai rispettivi valori, come ad esempio punti 3D, angoli, colori, layer, tipi di linea, ecc...

Il codice AutoLISP può interagire con l'utente attraverso l'uso di funzioni per la richiesta di punti, gruppi di selezione, numeri e altri tipi di dato, inoltre si può utilizzare un mini linguaggio per la creazione delle interfacce grafiche (GUI), il 'Dialog Control Language' (DCL).

Esempio:

; esempio di macro senza l`utilizzo 
;della linea di comando 
(defun ciao_mondo () (alert "Ciao Mondo";)) 
 
;esempio di macro che utilizza la linea di comando 
(defun c:hello_world () (alert "Hello World!";) (princ)) 
Compago