Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Emacs Lisp compiling

9 views
Skip to first unread message

Erik Naggum

unread,
May 1, 1999, 3:00:00 AM5/1/99
to
* sHiNOBi iRi <shur...@armory.com>
| I'm assuming that you can run lisp programs by typing them in a terminal,
| for instance, just like an an executable from c++ code..

yes, but in a somewhat different environment. the executable for C++
code is a function that resides on disk and which is loaded into memory
when you call it. it then runs to completion and you're back at the
operating system prompt or whatever. in Emacs, the loading is separated
from the calling. you load the file into Emacs, and then you call the
function. however, since the normal action when you type into Emacs is
to insert the characters into a buffer, you may have to do something
special to call the function. one option is to be in the *SCRATCH*
buffer, which is in LISP-INTERACTION mode. (the capitalization here is
not to be taken literally, but as differentiating names from the text.)
here you can type expressions, but when you type C-j (LF) after a form,
it gets evaluated. (this is like pressing return (C-m, CR) in a normal
command-line interaction.) another option is to call the function
EVAL-EXPRESSION through the keybinding M-: and give it the form to
evaluate. yet another option is to make the function "interactive",
which means that it may be bound to a key or called with M-x, and reads
its own arguments from the user.

Emacs Lisp is a Lisp environment, like Windows is a C++ environment and
Unix/Linux is a C environment. when you wish to mix environments, it is
very instructive to see their similarities relative to their natural
habitat, not try to force them to be similar in the natural habitat of
the other. e.g., the fact that you start your computer and it loads the
operating system and finds which functions are available is analogous to
starting Emacs and loading the files you need to call your functions.
typically, therefore, you ask Emacs to load all your files for you in
.emacs, which Emacs loads automatically, and then you call them.

to compile Emacs Lisp files, use BYTE-COMPILE-FILE. other Lisps have
something very similar. to load the compiled files, use LOAD.

(for a more Emacs-specific response and a less general Lisp response, you
might try comp.emacs.)

#:Erik

0 new messages