[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: `make' written in elisp

From: Stefan
Subject: Re: `make' written in elisp
Date: Tue, 04 Jan 2005 08:59:00 -0500
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/21.3.50 (darwin)

Stefan> What I was talking about is things like latex-preview
Stefan> searching for some LaTeX files.  This is not done at
Stefan> startup: it is currently done at install time, and I was
Stefan> arguing about that it should be done when latex-preview is
Stefan> loaded.  Of course it may also take too much time,

> That's my point.  People are just not going to find that acceptable,
> at least they didn't with year 2000 hardware with XEmacs.

But you're comparing apples and oranges.  With XEmacs you're talking about
lots and lots of searches at every startup, whereas with AUCTeX we're talking
about several searches done only when the feature is used.

So, yes, maybe it'll be slow, but the XEmacs experience with its package
system is no evidence of it.

Stefan> So there is some amount of version-dependency checking
Stefan> now?

> No.  These are package dependencies, not version dependencies.  If a
> package uses macros from another one, it is placed in the "REQUIRES"
> make variable.  Then the libraries from those REQUIRE'd packages are
> preloaded using the -l argument to emacs.

> Theoretically these could be autogenerated, but the dependency
> trackers we've seen so far have all been buggy, and miss more
> dependencies than when doing it by hand.

The way to fix those things is to call them bugs.  The packages should have
(require 'foobar) or (eval-when-compile (require 'foobar)) so that you get
a clean error rather than a miscompile.

Of course, you don't always have much control over the upstream code, but
you can apply local patches.  The only case where (require 'foobar) can
still lead to miscompile is when old versions of `foobar' don't provide
the macro, which is why I thought you used version-dependency checking.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]