Main Page | See live article | Alphabetical index

AutoLISP programming language

AutoLISP is a programming language, a dialect of LISP included with the CAD program AutoCAD to allow the user to add functionality to the software. It is not included with the AutoCAD LT product line.

It was derived from the XLISP dialect of LISP, which was created by David Betz. It is a small language compared to Common Lisp. It has extensions that support the manipulation of graphical entities. The properties of these graphical entities are revealed to AutoLISP as association lists in which AutoCAD "group codes" are paired with values that indicate properties such as points, radii, colors, layers, linetyptes, etc.

The language was added to AutoCAD in Version 2.18 in January 1986, and continued to be enhanced in successive releases up to Release 12 in June 1992. After that, its development was neglected by Autodesk in favor of more fashionable development environments. However, it has stubbornly remained AutoCAD's primary user customization language.

Vital LISP, a considerably enhanced version of AutoLISP including an IDE, debugger and compiler, was developed and sold by third party developer Basis Software, Inc. Autodesk purchased this, renamed it Visual LISP, and briefly sold it as an add-on. It was incorporated into AutoCAD as a replacement for AutoLISP in AutoCAD 2000, released in March 1999. Visual LISP actually represents a superset of AutoLISP, including all the old AutoLISP functionality, but also providing VBA-like access to the AutoCAD object model.

LISP is a partial acronym for List Processor. One codes by typing information into lists which start and end in parentheses. Programmers often jokingly say LISP stands for "Lost In Stupid Parentheses"