From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Miles Bader Newsgroups: gmane.emacs.devel Subject: Re: moving more cl seq/mapping support into core Date: Sat, 25 Sep 2010 14:58:11 +0900 Message-ID: <87sk0y1i18.fsf@catnip.gol.com> References: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: dough.gmane.org 1285394320 15796 80.91.229.12 (25 Sep 2010 05:58:40 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sat, 25 Sep 2010 05:58:40 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Sep 25 07:58:39 2010 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1OzNmR-0007LH-Bh for ged-emacs-devel@m.gmane.org; Sat, 25 Sep 2010 07:58:39 +0200 Original-Received: from localhost ([127.0.0.1]:54923 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OzNmQ-00020A-TS for ged-emacs-devel@m.gmane.org; Sat, 25 Sep 2010 01:58:38 -0400 Original-Received: from [140.186.70.92] (port=59104 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OzNmI-0001z4-C8 for emacs-devel@gnu.org; Sat, 25 Sep 2010 01:58:31 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OzNmH-0007KT-3a for emacs-devel@gnu.org; Sat, 25 Sep 2010 01:58:30 -0400 Original-Received: from lo.gmane.org ([80.91.229.12]:42954) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OzNmG-0007KN-Qi for emacs-devel@gnu.org; Sat, 25 Sep 2010 01:58:29 -0400 Original-Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1OzNmB-0007HH-2d for emacs-devel@gnu.org; Sat, 25 Sep 2010 07:58:23 +0200 Original-Received: from 218.231.154.125.eo.eaccess.ne.jp ([218.231.154.125]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Sat, 25 Sep 2010 07:58:23 +0200 Original-Received: from miles by 218.231.154.125.eo.eaccess.ne.jp with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Sat, 25 Sep 2010 07:58:23 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 32 Original-X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: 218.231.154.125.eo.eaccess.ne.jp System-Type: x86_64-unknown-linux-gnu Cancel-Lock: sha1:d5yUZJuP29+GxEDlzGybfdAkkOI= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:130826 Archived-At: Leo writes: > Those functions are not there overnight they probably came from people's > years of experience using and designing lisp. So they will be reinvented > from time to time for writing any non-trivial elisp packages except now > we have slightly different versions here and there. > > My wish is all of them should be incorporated into elisp. Some CL functions are so trivial that it's not hard to move them (e.g., gensym, though I've somehow gotten the impression it's frowned on these days), but more tricky are those of obvious usefulness, that have keyword-heavy interfaces in CL (though I think it's quite common that in many cases few or none of the keyword argument are actually used very often). For instance, `remove-if' is obviously useful (I think it's often one of those "I use cl.el for that function" functions), not complex, and could probably be moved into the core in some simplified form. Suggested function signature: (remove-if PREDICATE SEQ [TEST]) -- and of course, change the cl.el version to deal with TEST as well. -Miles p.s. Another [kinda related to remove-if] that I've often wanted to use, but didn't because it wasn't in the core, is `mapcan' -- and nit doesn't even have any keywords! -- Justice, n. A commodity which in a more or less adulterated condition the State sells to the citizen as a reward for his allegiance, taxes and personal service.