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.