#Transient Autolisp?
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?