CompuServe Messages

#Transient Autolisp?

    19-Apr-88 06:16:25
Sb: #Transient Autolisp?
Fm: LEN MILLER 74216,2346
To: all
I've been avoiding the defun convention lately in several of my lisp programs. That is, (defun xxxx () ;working code goes here );end defun By avoiding the top and bottom line as the working code is "loaded", I perceive that the function is transient, doing its job and leaving behind in memory only the global symbols which might have been changed or initialized. Is this perception correct? Or might it haunt me later with some unformseen problems? One reason, for example, is a program like my SETSUP.LSP. It's nearly 4000 bytes long. Once I'm done with it at the start of an editing session it normally won't be used again, so why allow it to stick around? I have several other programs, also large and loaded in transient fashion for the same reason. I understand by operating this way there are at least two disadvantages. Symbols cannot be defined as LOCAL. And each time the program is executed it must be loaded from disk. Am I missing something else? Am I really saving anything? Are there some other disadvantages?