Subject: Re: Storing macro dependencies in the in-memory function object (was Re: When to recompile/reeval?) From: Erik Naggum <erik@naggum.no> Date: 18 Oct 2002 16:17:53 +0000 Newsgroups: comp.lang.lisp Message-ID: <3243946673844651@naggum.no> * Pekka P. Pirinen | Just recompile - modern compilers are fast An excellent argument against incremental development and compilation! Why not just stop and restart applications when you make changes, too? Or better yet, just reboot after you change a function. Modern computers are fast. Some people actually work on applications that take a /long/ time to compile, even on very fast computers. Having to figure out what to compile when a macro changes is time-consuming, but less so than to recompile indiscriminately. Instead, run the parts under development interpreted with late macro-expansion, and the difference in performance between a compiled version, which would take a coffee break to achieve, and the interpreted version may be compensated for by typing one less letter in the command to run it. Modern computers /are/ fast. The desire to compile everything all the time is simply wrong. Common Lisp environments that force people back into the old ways of compiling the whole system or major parts of it or having to go through build procedure after every batch of changes are doing their users a great disservice. Why do you guys think that "scripting" is such a hit? Because it does not need the stupid build procedure when changes are made! Figure it out! Lisp has supported this mode of development for 40+ years, but now that it is becoming popular, let's make Common Lisp compiled-only and ask people to compile everything! I would expect this shit from people who wanted people to move away from Common Lisp to, say, Python or Arc. -- Erik Naggum, Oslo, Norway Act from reason, and failure makes you rethink and study harder. Act from faith, and failure makes you blame someone and push harder.