emacs-devel
[Top][All Lists]
Advanced

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

RE: policy, recommendations regarding `cl-*'


From: Drew Adams
Subject: RE: policy, recommendations regarding `cl-*'
Date: Tue, 25 Sep 2012 19:51:43 -0700

> Drew.  Just keep using (require 'cl) for code that needs to run in
> Emacs<24.3 and move on.  Yes, I hope to remove cl.el at the 
> some point.  Sadly, I know this time is not anywhere close.

OK, will do.  That is, (eval-when-compile (require 'cl)).
I do not use cl at runtime.

> As for "new stuff more compatible with CL but using the wrong name",
> I do not know what you're referring to (you're using cl-loop as an
> example, but loop is now an alias for cl-loop, so that can't 
> be it), so just be concrete (but brief) and maybe I can explain it.

I do not see anything in either of the two messages I sent that resembles the
phrase you quote or the terms it uses ("compatible"? "wrong name"?).  I have no
idea what that phrase means or where you got it.  AFAICT, it is not from me.  I
don't understand it, and I cannot answer you.  Perhaps you are really quoting
someone else?

Wrt `cl-loop' and `loop': As long as one is an alias for the other, I have no
problem using either.  Of course. 

What I do not think is a great idea is the deprecation.  (Was there even a
proposal about deprecation and a discussion of the proposal?)

As I made clear, I am in favor of having a separate "namespace"-clean library
that systematically uses the prefix `cl-'.  What I disagree is a good idea is to
_deprecate_ the longstanding Emacs versions that do not have such a prefix.

IOW, if the aim, as was expressed in the original discussion where you proposed
`cl-lib.el' and the prefix `cl-', is simply to give users a clean way to use
cl.el functions at runtime, then I'm all in favor of that, and I agree with the
prefixing.

That is very different from deprecating the cl.el stuff.  And that deprecation
is not just some vaguely "at some point" hope on your part - you are deprecating
it *now*.

And deprecation calls out for doc about how to move from the old to the new, as
I mentioned.  The CL manual and NEWS are silent on this, so far.  This too is
not great.  (I realize that we are not ready to release yet, so there is still
time to make this right.)

But above all I am specifically concerned about the macros, since those are what
I use (I do not use the functions at runtime).

Why on earth are you deprecating existing macros in favor of the same macros
with a `cl-' prefix?  I haven't seen an answer to that yet.  And I'm hoping you
will change your mind about it.  Again, I have no problem with "duplicating" the
macros via aliasing.  My problem is with their deprecation.

That is my concern for code that I maintain: just the macro names.  Above and in
the previous two messages, I've expressed additional concerns that do not
necessarily affect me directly - about the Emacs code organization and the
process of discussing, deprecating, and communicating compatibility/migration
information about deprecations.

But my immediate concern is maintaining code for multiple Emacs versions that
uses cl.el macros.




reply via email to

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