Gnus development mailing list
 help / color / mirror / Atom feed
From: Lars Ingebrigtsen <larsi@gnus.org>
To: Michael Albinus <michael.albinus@gmx.de>
Cc: ding@gnus.org
Subject: Re: Emacs version compatibility
Date: Thu, 02 Feb 2012 13:32:45 +0100	[thread overview]
Message-ID: <87pqdx76vm.fsf@gnus.org> (raw)
In-Reply-To: <87bophmnff.fsf@gmx.de> (Michael Albinus's message of "Thu, 02 Feb 2012 13:26:12 +0100")

Michael Albinus <michael.albinus@gmx.de> writes:

> Sure. First step into this direction could be a modularization of that
> compat library into compat22.el, compat23.el, xcompat.el.

I was thinking the opposite.  :-)  All the items should check explicitly
for whatever they want to do, and not rely on Emacs versions at all.

That is, if you want to have `help-function-arglist' defined, then check
whether it's undefined, and then define it.  If you want a recursive
`delete-directories', then check the version of that function that's
installed, and if it's not satisfactory, then define a version that is.

So this would be orthogonal to the Emacs versions.  (Well, sort of.  The
function (re)definitions wouldn't necessarily work on all Emacs versions
that have ever been, so they need to check whether they can actually do
what they're trying to do.  Or give up.  Like this:

(when (and (not (fboundp 'help-function-arglist))
	   (fboundp 'function-arglist))
  (defun help-function-arglist (def &optional preserve-names)
     ))

So if you're on an Emacs that doesn't even have `function-arglist', then
you won't get this function.

-- 
(domestic pets only, the antidote for overdose, milk.)
  http://lars.ingebrigtsen.no  *  Sent from my Rome



  reply	other threads:[~2012-02-02 12:32 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-01 13:15 Lars Ingebrigtsen
2012-02-01 13:37 ` Steinar Bang
2012-02-01 18:07 ` Ted Zlatanov
2012-02-01 19:40   ` Lars Ingebrigtsen
2012-02-02  7:40 ` Reiner Steib
2012-02-02  8:51   ` Michael Albinus
2012-02-02  8:59   ` David Engster
2012-02-02  9:47   ` Lars Ingebrigtsen
2012-02-02 10:43     ` Michael Albinus
2012-02-02 10:51       ` Lars Ingebrigtsen
2012-02-02 12:26         ` Michael Albinus
2012-02-02 12:32           ` Lars Ingebrigtsen [this message]
2012-02-02 13:02             ` Michael Albinus
2012-02-02 13:28               ` Lars Ingebrigtsen
2012-02-02 13:39                 ` Michael Albinus
2012-02-02 13:03             ` Ted Zlatanov
2012-02-02 13:29               ` Lars Ingebrigtsen
2012-02-02 13:57                 ` Ted Zlatanov

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=87pqdx76vm.fsf@gnus.org \
    --to=larsi@gnus.org \
    --cc=ding@gnus.org \
    --cc=michael.albinus@gmx.de \
    /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.
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 NNTP newsgroup(s).