Harnessing AutoCAD 2007

This chapter will cover the fundamental concepts of the Visual LISP programming system, including writing, storing, and loading LSP files; variables and expressions; lists; custom functions; and file handling
After completing this chapter, you will be able to do the following:
Grasp fundamental concepts of the Visual LISP programming system
Interpret Visual LISP applications written by others
Establish a basis for more advanced programming
In order to support Alonzo Church' lambda calculus operations, John McCarthy invented Lisp in the late 1950s. Internal data structures are ideally represented as lists, which can contain additional nested lists. The symbolic expressions for the lists are sandwiched with balanced parentheses. List processing is the intrinsic functionality of Lisp.
John Walker, the principal Autodesk co founder, recognized the synergistic potential of Lisp for AutoCAD customization at a time when competitive programs were either offering very simple macro operations or demanding extensive investment in higher level programming languages for similar operations. The implementation of Lisp for use within AutoCAD with some key constraints is referred to as AutoLISP and was introduced with AutoCAD Release 2.1 (later referenced as Release 6).
As Autodesk placed emphasis on its ARX technology for the development of high performance custom applications in recent years, developments in AutoLISP remained largely static. The introduction of Visual LISP has brought new life to legacy applications and also allowed users to maintain their investment in AutoLISP code. AutoCAD Visual LISP is referred to as VLISP in the remaining sections of this chapter
VLISP provides...