GNU bug report logs - #8126
23.2; Improvement requests for assoc.el

Previous Next

Package: emacs;

Reported by: michael_heerdegen <at> web.de

Date: Sat, 26 Feb 2011 19:38:02 UTC

Severity: wishlist

Tags: wontfix

Found in version 23.2

Done: Glenn Morris <rgm <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Michael Heerdegen <michael_heerdegen <at> web.de>
To: 8126 <at> debbugs.gnu.org
Subject: bug#8126: 23.2; Improvement requests for assoc.el
Date: Sat, 26 Feb 2011 20:39:37 +0100
Hello Emacs,

assoc.el, a library providing functions on association lists, is part
of GNU Emacs.

My requests:


1. Please mention this lib in the Elisp Manual.

assoc.el provides some essential elementary functions for alists.
These should be mentioned in the Elisp Manual (at least `aput',
`adelete') under "Association Lists".


2. Please remove the misleading word `sort' from the header
descriptions.

This file doesn't include any function for sorting alists.  There is
`asort', but it actually doesn't sort the alist, it only moves an
element with a given KEY to the head of the alist.


3. Most of the functions in this library use `asort' (same file) as a
helper.  `asort' uses `sort' only to put a cons cell with a given key
to the head of the alist.  This is very inefficient.  Thus, `aput',
`adelete', `aget' and `amake' have a bad run-time behavior.

Even worse, `amake' uses `aput', thus sorts the alist built so far in
recursion.

There is a package in apel called "alist.el" which provides very
similar functions.  You can use it as a reference.


4. `eval' -> `symbol-value'

All occurrences of `eval' can be replaced with `symbol-value'.


5. There are currently no autoload cookies in "assoc.el".  Maybe they
should be added.


Thanks,

Michael.



In GNU Emacs 23.2.1 (i486-pc-linux-gnu, GTK+ Version 2.20.0)
 of 2010-12-11 on raven, modified by Debian
Windowing system distributor `The X.Org Foundation', version 11.0.10707000
configured using `configure  '--build' 'i486-linux-gnu' '--build' 'i486-linux-gnu' '--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib' '--localstatedir=/var/lib' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--with-pop=yes' '--enable-locallisppath=/etc/emacs23:/etc/emacs:/usr/local/share/emacs/23.2/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/23.2/site-lisp:/usr/share/emacs/site-lisp:/usr/share/emacs/23.2/leim' '--with-x=yes' '--with-x-toolkit=gtk' '--with-toolkit-scroll-bars' 'build_alias=i486-linux-gnu' 'CFLAGS=-DDEBIAN -g -O2' 'LDFLAGS=-g' 'CPPFLAGS=''





This bug report was last modified 12 years and 281 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.