Mercurial > hg > xemacs-beta
diff lisp/obsolete.el @ 5583:10f179710250
Deprecate #'remassoc, #'remassq, #'remrassoc, #'remrassq.
src/ChangeLog addition:
2011-10-09 Aidan Kehoe <kehoea@parhasard.net>
* fns.c (remassoc_no_quit):
* fns.c (remrassq_no_quit):
* fns.c (syms_of_fns):
* fontcolor-tty.c (Fregister_tty_color):
* fontcolor-tty.c (Funregister_tty_color):
* fontcolor-tty.c (Ffind_tty_color):
* lisp.h:
Remove Fremassq, Fremrassq, Fremassoc, Fremrassoc, they're
XEmacs-specific functions and Lisp callers should use (delete*
... :key #'car) anyway. Keep the non-Lisp-visible _no_quit
versions, calling FdeleteX from C with the appropriate arguments
is ungainly.
lisp/ChangeLog addition:
2011-10-09 Aidan Kehoe <kehoea@parhasard.net>
* obsolete.el:
* obsolete.el (assq-delete-all):
* packages.el (package-provide):
* packages.el (package-suppress):
* mule/cyrillic.el ("Cyrillic-KOI8"):
* mule/cyrillic.el (koi8-u):
* mule/general-late.el (posix-charset-to-coding-system-hash):
* mule/latin.el:
* mule/latin.el (for):
* cl-extra.el:
* cl-extra.el (cl-extra):
* loadup.el (load-history):
Change any uses of #'remassq, #'remassoc and friends to calling
#'delete* with an appropriate key argument. Provide compatibility
implementations, mark them obsolete.
man/ChangeLog addition:
2011-10-09 Aidan Kehoe <kehoea@parhasard.net>
* lispref/lists.texi (Association Lists):
Don't document #'remassoc, #'remassq and friends in detail;
they're XEmacs-specific and (delete* ... :key #'car) is
preferable.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Sun, 09 Oct 2011 12:55:51 +0100 |
parents | 855b667dea13 |
children | 2fc3f2f35523 |
line wrap: on
line diff
--- a/lisp/obsolete.el Sun Oct 09 10:39:09 2011 +0100 +++ b/lisp/obsolete.el Sun Oct 09 12:55:51 2011 +0100 @@ -263,8 +263,8 @@ (define-compatible-function-alias 'interactive-form 'function-interactive) ;GNU 21.1 -(define-compatible-function-alias 'assq-delete-all - 'remassq) ;GNU 21.1 +(define-function 'assq-delete-all 'remassq) ;GNU 21.1 +(make-compatible 'assq-delete-all "use (delete* ITEM SEQUENCE :key #'car)") (defun makehash (&optional test) "Create a new hash table. @@ -452,5 +452,15 @@ (define-obsolete-variable-alias 'cl-macro-environment 'byte-compile-macro-environment) +;; Actual implementations of these functions are in cl-extra.el, after +;; cl-macs is loaded, since those implementations use #'labels and +;; #'symbol-macrolet. These APIs were always XEmacs-specific, were never +;; widely used, and it was always more readable and more compatible to use +;; the CL functions. +(make-obsolete 'remassoc "use delete* with :test #'equal, :key #'car") +(make-obsolete 'remassq "use delete* with :test #'eq, :key #'car") +(make-obsolete 'remrassoc "use delete* with :test #'equal, :key #'cdr") +(make-obsolete 'remrassq "use delete* with :test #'eq, :key #'cdr") + (provide 'obsolete) ;;; obsolete.el ends here