[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: elisp's cl package. Don't understand the notice about eval-when-com
From: |
Xah Lee |
Subject: |
Re: elisp's cl package. Don't understand the notice about eval-when-compile |
Date: |
Wed, 25 Mar 2009 19:12:40 -0700 (PDT) |
User-agent: |
G2/1.0 |
Xah Lee <xah...@gmail.com> writes:
> > in emacs lisp's CL package documentation “(info "(cl)Overview")”, it
> > has this passage:
>
> > *Please note:* the "CL" functions are not standard parts of the
> > Emacs Lisp name space, so it is legitimate for users to define them
> > with other, conflicting meanings. To avoid conflicting with those
> > user
> > activities, we have a policy that packages installed in Emacs must not
> > load "CL" at run time. (It is ok for them to load "CL" at compile
> > time
> > only, with `eval-when-compile', and use the macros it provides.) If
> > you are writing packages that you plan to distribute and invite
> > widespread use for, you might want to observe the same rule.
>
> > I don't quite understand it.
On Mar 25, 3:02 am, "Thomas F. Burdick" <tburd...@gmail.com> wrote:
> No. It's saying that if you are trying to get your package included in
> the official Emacs distribution, you can only use macros from cl.el,
> not functions.
Ok, after spent some 30 min starting to write a reply with much more
confusion, i think i understand this now and i think this is the best
explanation. Thanks.
though, there's still the practical question of which ones are macros.
There doesn't seem to have a clear list.
basically, my concern here is practical one. I want to use some
functionalities in cl, but need to know which i can use etc. So, if
programers using cl for their packages for public, they need to have a
list of exactly what they can use.
... after some 10 min thinking and reading the cl doc, at this point i
guess i don't have a question... i guess a clear list of macro isn't
there because the whole thing is rather complex... the cl package is
rather more for CL programers coming to elisp as opposed to simply a
extra library of useful functions...
here's some more confusion i have...
For example, when i do describe-function on “pop”, it says:
«pop is a Lisp macro in `subr.el'.»
but after loading cl, it says:
«pop is a Lisp macro in `cl.el'.»
So, it appears, cl package also shadow elisp symbols (apparantly they
are the same thing, but if so, why there's one in still in cl when
already moved to elisp?).
Xah
∑ http://xahlee.org/
☄
- elisp's cl package. Don't understand the notice about eval-when-compile, Xah Lee, 2009/03/25
- Re: elisp's cl package. Don't understand the notice about eval-when-compile, Michael Ekstrand, 2009/03/25
- Re: elisp's cl package. Don't understand the notice about eval-when-compile, Kevin Rodgers, 2009/03/25
- Re: elisp's cl package. Don't understand the notice about eval-when-compile, Thomas F. Burdick, 2009/03/26
- Re: elisp's cl package. Don't understand the notice about eval-when-compile,
Xah Lee <=
- Re: elisp's cl package. Don't understand the notice about eval-when-compile, Leo, 2009/03/26
- Re: elisp's cl package. Don't understand the notice about eval-when-compile, Juanma Barranquero, 2009/03/26
- Re: elisp's cl package. Don't understand the notice about eval-when-compile, Leo, 2009/03/26
- Re: elisp's cl package. Don't understand the notice about eval-when-compile, Samuel Wales, 2009/03/26
- Re: elisp's cl package. Don't understand the notice about eval-when-compile, Leo, 2009/03/26
- Re: elisp's cl package. Don't understand the notice about eval-when-compile, Lennart Borgman, 2009/03/26
- Re: elisp's cl package. Don't understand the notice about eval-when-compile, Kevin Rodgers, 2009/03/26