Subject: bug#25627: 25.1; `help-make-xrefs' loads `cl-extra.el' now

From: Drew Adams <[email-masked]>
Date: Tue, 7 Feb 2017 08:13:10 -0800 (PST)

> > OK, there are some aliases, such as `case' for `cl-case'.  But I
> > thought that such was the case only for situations where Emacs
> > without cl.el did not have such a function/macro/etc. - such as
> > `case'.
> 
> Doesn't cl.el define more than 170 of such aliases?

Dunno, and I don't really care.  The number is not so important.
What can be problematic is if such an alias _clashes_ with a
different construct of the same name for Emacs without cl.el.

I also said:

> > Aside from such messes (and there are a bunch), I think that
> > cl.el, like cl-lib.el, separates its stuff from non-cl.el
> > stuff in Emacs.  I don't think there are cases of changing
> > semantics.  (But if there are, those should be fixed.)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

But again, this bug report is about cl-extra.el, not cl.el.
The single use of `cl-some' here is gratuitous.  There is
no good reason that I'm aware of why a commonly used help
function should use `cl-some'.  There are a zillion simple
ways to do the same thing that is done by `cl-some' here.

If this is not fixed (and even if it is, alas), the door is
open for any number of such abuses.  The direction that leads
is just inclusion of cl.el (or similar that has the same
effect).

Emacs Dev has not decided to include cl.el by default.
If it does, then OK, it does.  But in that case a different
restructuring and probably some other name-change
rationalization will also be needed.

This bug and its fix are simple - trivial even.  You could
even use `cl-loop', no doubt.  That's a macro, so no problem.
(Of course, fixing it without using anything `cl-*' is also
simple.)

I see no reason why anyone would not want this fixed.
Especially considering that if the flood gates are opened
to all cl*.el constructs then there will be a certain amount
of adjusting to do - both for Emacs Dev (cleanup, factoring,
whatever) and for users.