Subject: Re: Emacslisp packaging
To: Masao Uebayashi <uebayasi@soum.co.jp>
From: Urban Boquist <urban@boquist.net>
List: tech-pkg
Date: 05/09/2002 10:40:46
>>>>> Masao Uebayashi writes:

Hi Masao,

I think thar you are addressing an important problem. In my experience
code that people stick in their ~/.emacs tend to stay there for ages,
so you should really try to minimize the things that you need to put
in there... ;-)

Masao> (`pkgsrc-add-load-path' and `pkgsrc-provide' are to avoid
Masao> `load-path' duplication and multiple inclusion of the
Masao> fragment.)

Do you really think load-path duplication will be a problem in
practice? It seems to me that the normal require/provide should work
just fine to do what you want. It seems unnecessary to invent these
new functions. If you have a case where a fragment cannot be run twice
you can always include a `featurep' test at the beginning of the
fragment.

Masao> This fragment `lookup.el' must NOT be located in `load-path',

In my experience having more than one file with the same name, even if
only one is in load-path, very easily leads to confusion. Especially
when you consider things like the hideous "subdirs.el" that someone
decided that emacs should use a couple of years ago. Instead, I think
it might be better to give the fragment a different name. Then you
could also put it in load-path (site-lisp I guess) and use the
standard `require' to load it.

Masao>   (pkgsrc-require 'foo)
Masao> in her/his ${HOME}/.emacs.

Or just "(require 'foo-install)".

Kind regards,

        -- Urban