all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@IRO.UMontreal.CA>
To: Alan Mackenzie <acm@muc.de>
Cc: emacs-devel@gnu.org
Subject: Re: [Emacs-diffs] master b0042b7: Make CC Mode load cl-lib rather than cl in Emacs 26.
Date: Mon, 26 Jun 2017 17:47:09 -0400	[thread overview]
Message-ID: <jwv7ezy79bf.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <20170626203046.GE2471@acm> (Alan Mackenzie's message of "Mon, 26 Jun 2017 20:30:46 +0000")

>> As you know, there are other options.  E.g. to distribute that other
>> package (cl-lib) along with yours.  Or to distribute your package via
>> a system which will take care of "search for and download" (e.g. ELPA).
> The first would cause irritation to the user.

Hmm... sorry, I don't see why that would cause irritation.
AFAICT the user would be blissfully unaware.  I doubt many of your users
would notice an additional 13KB file in your package.

> The second is simply not the way CC Mode is distributed.

I understand you want to support users of Emacsen that don't have
package.el, and that makes sense, indeed.  I mentioned it, because
I think it should be fairly easy to also distribute CC-mode via GNU
ELPA with very little extra work (the package would be built directly
from emacs.git, like we do for python.el, soap-client, and a few
more).

But yes, whether we do that or not doesn't make a difference for the
case of users of Emacsen without package.el (i.e. Emacs-23 and XEmacs).

>> Bundling cl-lib with your "manually installed" cc-mode package should be
>> pretty easy.  I'd be all too happy to help you with it, if that can sway you.
> Talk about taking a sledgehammer to crack a nut!

I agree that if you look at it as "adding a 13KB file" vs "add a few
(defmacro ... (if (eq c--cl-library ...)))", the choice may sound like
a sledgehammer, but the way I look at it, cl-lib.el is a file that's
already written and hasn't needed any maintenance since Feb-2014,
so you can take it as a black box.

>> Ah, yes, that discussion.  It's hard to please everyone.
> No, not really.  Leaving the traditional names in place, producing no
> compiler warnings, would have pleased more than what was done.

I see we agree ("more than" is not "everyone").

> Funnily enough, I don't remember any negotiation, or even discussion
> about the matter on emacs-devel before this change happened.  The extra
> macros in CC Mode are one of the consequences.  I would really rather
> not have had to spend time on this.

IIUC, the introduction of cl-lib is the result of the thread that
started with
https://lists.gnu.org/archive/html/emacs-devel/2012-02/msg00175.html
This other thread is also related:
https://lists.gnu.org/archive/html/emacs-devel/2012-04/msg00245.html

But it is also the result of many earlier discussions asking for the
same thing.  Again and again, people asked to get access to all of CL's
functionality in Emacs (i.e. including CL's functions at runtime) and it's
always been rejected until we came up with cl-lib (and took advantage of
it to move several CL features, like setf, into core at the same time).

I have no intention to claim it's the perfect solution.  I'm pretty sure
it was noone's favorite solution, but my impression after 5 years is
that most people think it was an improvement (in large part thanks to
the cl-lib.el forward compatibility library which significantly eases up
the transition, although you don't want to use).


        Stefan



  reply	other threads:[~2017-06-26 21:47 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20170625140057.23973.37361@vcs0.savannah.gnu.org>
     [not found] ` <20170625140057.DC363208E3@vcs0.savannah.gnu.org>
2017-06-25 21:44   ` [Emacs-diffs] master b0042b7: Make CC Mode load cl-lib rather than cl in Emacs 26 Stefan Monnier
2017-06-26 16:31     ` Alan Mackenzie
2017-06-26 17:56       ` Stefan Monnier
2017-06-26 18:20         ` Alan Mackenzie
2017-06-26 19:58           ` Stefan Monnier
2017-06-26 20:30             ` Alan Mackenzie
2017-06-26 21:47               ` Stefan Monnier [this message]
2017-06-26 21:07           ` Richard Stallman

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

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

  git send-email \
    --in-reply-to=jwv7ezy79bf.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=acm@muc.de \
    --cc=emacs-devel@gnu.org \
    /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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.