emacs-devel
[Top][All Lists]
Advanced

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

Re: Proper namespaces in Elisp


From: Daniel Colascione
Subject: Re: Proper namespaces in Elisp
Date: Sat, 09 May 2020 10:45:25 -0700
User-agent: AquaMail/1.24.0-1585 (build: 102400006)



On May 9, 2020 10:25:13 AM Andrea Corallo <address@hidden> wrote:

Daniel Colascione <address@hidden> writes:

On May 9, 2020 1:37:16 AM Andrea Corallo <address@hidden> wrote:

Daniel Colascione <address@hidden> writes:

So there are three basic operations we can support: in Python syntax,
1) from PKG import * (exposing PKG.foo as foo), 2) import PKG as p
(exposing PKG.foo as p.foo) and 3), from PKG import foo (exposing
PKG.foo as foo).  CL supports all three. I'm most interested in
supporting #2, since that's closest to existing use. The lexspace
prototype posted earlier today supports #3 and #1 (the latter via
lexspace inheritance) only, but I think we should do #2 instead

I suspect we'll need all threes anyway.

Why? What problem is actually being solved by #1 and #3? If the
problem is that package names long enough to avoid collisions are too
annoying to type, we can address this problem with #2.

I think #1 would be the way to derive an entire package and add some
functionality to it without changing the names that you'll finally want
to re-expose.  Is this correct?

Can you give a concrete example of a situation in which it'd be useful to do that? I think other people on the thread are right about discouraging bulk naked symbol imports.



--
address@hidden






reply via email to

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