unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Drew Adams <drew.adams@oracle.com>
To: Stefan Monnier <monnier@iro.umontreal.ca>, emacs-devel@gnu.org
Subject: RE: Declaring cl.el obsolete
Date: Tue, 23 Jul 2019 09:29:44 -0700 (PDT)	[thread overview]
Message-ID: <5f011dd7-8b78-4a02-90c0-6f3d52fb5690@default> (raw)
In-Reply-To: <jwvd0i0vmfj.fsf-monnier+emacs@gnu.org>

> > cl-lib was released 6 years ago...
> > everything it offers is provided by cl-lib or lexical-binding.

Maybe.  When those are available, which they're
not for some older releases.  And not everything:
aliases to names without `cl-' are missing.

> In the ensuing discussions, there have been the following objections:
> 1- Eli doesn't like using "obsolete" and would prefer "deprecated".
> 2- Lars pointed out that `cl` is still in fairly wide use outside of
> Emacs.
> 3- Ken explained that he prefers the non-prefixed names.
> 
> Regarding (3), I know several people feel that way, and that's a valid
> preference, but I see no reason why the `cl` package satisfying this
> preference needs to be distributed with Emacs.
> 
> Regarding (2), I pointed out that I don't foresee `cl` disappearing
> completely any time soon.  Instead, it will likely move to GNU ELPA
> when we finally remove it from Emacs.
> 
> As for (1), I used the word "deprecated".
> 
> So any remaining objection to the patch below?

I don't really want to get into this can of worms,
but I guess I should say what I think.

1. Some code will continue to use `cl.el', at least
   for compatibility with both older and newer Emacs
   versions.  Even for compilation-time use of macros.
   Some older Emacs versions don't have `cl-lib.el'
   (or `cl-macs.el').  Even `lexical-let' and `flet',
   however imperfect, are important for older versions.

2. What's the reason why names with no prefix, that
   do not conflict with any Emacs names, can't be
   included in `cl-lib.el' as aliases?  I'm thinking
   of names like `case', `incf', `multiple-value-bind',
   `typecase', `gentemp', `pushnew', `delete-if',
   `loop', `decf', and `(delete|remove)-duplicates'.
   (In my code, `case' is the most commonly used.)

   They are aliased in `cl.el' (see #1).  Without
   supporting the aliases, code that's compatible
   with older releases can't use the aliases, and it
   also can't use the `cl-' versions, which don't
   exist.

3. Moving `cl.el' to GNU ELPA doesn't help its use
   by older Emacs versions that don't support
   package.el.

I see only bother for users in the proposal.  I'm
sure it would reduce some maintenance for Emacs
dev, but how much?  And is that worth the bother
for users and (at least some) 3rd-party libraries?

My vote: -1.



  reply	other threads:[~2019-07-23 16:29 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-23  3:26 Declaring cl.el obsolete Stefan Monnier
2019-05-23  4:47 ` Eli Zaretskii
2019-05-23 10:28   ` Noam Postavsky
2019-05-23 14:20     ` Eli Zaretskii
2019-05-24 14:28       ` Stefan Monnier
2019-05-24 15:03         ` Eli Zaretskii
2019-05-24 16:22           ` Stefan Monnier
2019-05-23  8:44 ` Lars Ingebrigtsen
2019-05-23  8:50   ` Lars Ingebrigtsen
2019-05-23 17:03     ` Romanos Skiadas
2019-05-24  1:22       ` 조성빈
2019-05-25 20:12         ` Romanos Skiadas
2019-05-23 12:15   ` Stefan Monnier
2019-05-23 15:08   ` Ken Olum
2019-05-23 15:57     ` Sam Steingold
2019-07-23 15:07 ` Stefan Monnier
2019-07-23 16:29   ` Drew Adams [this message]
2019-07-23 16:55     ` Stefan Monnier
2019-08-06  8:02   ` Stefan Monnier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5f011dd7-8b78-4a02-90c0-6f3d52fb5690@default \
    --to=drew.adams@oracle.com \
    --cc=emacs-devel@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).