>>>> "Ben" == Ben Wing <ben(a)666.com>
writes:
Ben> But I understand very clearly what Stephen is saying,
Yup, I can sign off on what you wrote.
I have a difference of opinion on implementation strategy, though.
Ben> [6] The set of package roots is determined at runtime by
Ben> combining some standard locations with any package roots
Ben> specified using --package-prefix, in the following order,
Ben> where earlier in the list means earlier in the load-path:
Ben> [1] ~/.xemacs
Ben> [2] [maybe] an environment variable EMACSPACKAGEPREFIX
Ben> [3] --package-prefix
Ben> [4] CORE-ROOT/lib/xemacs-VERSION
Ben> [5] CORE-ROOT/lib/xemacs
IMO, [4] is part of the core; it defines fundamental Lisp constructs
(eg, cl.el). It should be the last place searched, and it should (I
think) be implicit, ie, it is always searched (effectively, LISP
primitives that happen to be defined in LISP, not C). If there's
anything in [4] that we might want NOT to be found at all under some
circumstances, we should get it out of there, no?
[1], [2], [3], and [5] should merely be alternative UIs to a single
API, with relative paths being relative to CORE-ROOT.
For example, I see the default "traditional" configuration specified as
("~/.xemacs" "lib/xemacs"), the default "FHS-compatible"
configuration
("~/.xemacs" "share/xemacs").
--
Institute of Policy and Planning Sciences
http://turnbull.sk.tsukuba.ac.jp
University of Tsukuba Tennodai 1-1-1 Tsukuba 305-8573 JAPAN
Ask not how you can "do" free software business;
ask what your business can "do for" free software.