Subject: Re: compile From: Erik Naggum <erik@naggum.no> Date: 28 Jan 2004 10:57:55 +0000 Newsgroups: comp.lang.lisp Message-ID: <3284276275271451KL2065E@naggum.no> * Maciej Borecki | I'm a newbie in lisp programming, is possibly to compile lisp into an | executable file under linux or windows? If so plz give me some piece | of advice or links... The most common reason to ask this question is that you want to write and run your programs the same way you were used to in languages whose tools convert a dead text file into a dead executable file which you give the spark of life from the user interface. Wanting this is not a bad thing, but it is not the only option. Common Lisp environments are just like the shell under Unix where you extend the basic language with constructs of your own. Instead of adding an executable to the vocabulary of your user interface, the Common Lisp way is to add new functions to the Common Lisp environment. If you are into graphical user interfaces, you can add your Common Lisp functions to the Common Lisp environment's graphical user interface, too, but this is usually so much work that working with the text interface is recommended. Integrated development environments are all the rage in all sorts of weird programming languages these days, but Common Lisp environments have always had integrated editors, and the most obvious example of this is Emacs, but there are others. I highly recommend that you find such an editor to write your code, because they all allow you to send the code to the Common Lisp compiler or evaluator and then you can see the results of your coding, testing, or experimentation immediately. What is commonly referred to as the Pedit-compile-link-run» cycle is perhaps the largest difference from Common Lisp environments, because in Common Lisp, the whole «compile-link-run» part is invoked with a single key-stroke (or key-chord) and completes in milliseconds. This interactive coding style is one of Common Lisp's good selling points, but it also requires that you keep better track of the changes you make to your source code than you would in most other language, since you can make changes to the environment in which you compile and run your code that do not make it into the source file, in which case you lose context information if you have to reload everything from scratch. A friend of mine illustrated this problem well. He is the kind of computer user who keeps a lot of things going simultaneously. All of a sudden, the X server crashed and he was thrown out to the login prompt. His sudden grief was very evident on his face, but all he said, barely audible, was «My context...». -- Erik Naggum | Oslo, Norway 2004-028 Act from reason, and failure makes you rethink and study harder. Act from faith, and failure makes you blame someone and push harder.