From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Luc Teirlinck Newsgroups: gmane.emacs.xemacs.design,gmane.emacs.devel Subject: Re: Rationale for split-string? Date: Sun, 20 Apr 2003 20:55:36 -0500 (CDT) Sender: xemacs-design-admin@xemacs.org Message-ID: <200304210155.h3L1taS11309@eel.dms.auburn.edu> References: <87brz57at2.fsf@tleepslib.sk.tsukuba.ac.jp> <200304171744.h3HHiJCx009215@rum.cs.yale.edu> <87adem27ey.fsf@tleepslib.sk.tsukuba.ac.jp> NNTP-Posting-Host: main.gmane.org X-Trace: main.gmane.org 1050890135 22555 80.91.224.249 (21 Apr 2003 01:55:35 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Mon, 21 Apr 2003 01:55:35 +0000 (UTC) Cc: stephen@xemacs.org, emacs-devel@gnu.org, xemacs-design@xemacs.org Original-X-From: xemacs-design-admin@xemacs.org Mon Apr 21 03:55:34 2003 Return-path: Original-Received: from gwyn.tux.org ([199.184.165.135]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 197QWr-0005rf-00 for ; Mon, 21 Apr 2003 03:55:34 +0200 Original-Received: from gwyn.tux.org (localhost.localdomain [127.0.0.1]) by gwyn.tux.org (8.11.6p2/8.9.1) with ESMTP id h3L1u2M07627; Sun, 20 Apr 2003 21:56:02 -0400 Original-Received: (from turnbull@localhost) by gwyn.tux.org (8.11.6p2/8.9.1) id h3L1tnw07557 for xemacs-design-mailman@xemacs.org; Sun, 20 Apr 2003 21:55:49 -0400 Original-Received: (from mail@localhost) by gwyn.tux.org (8.11.6p2/8.9.1) id h3L1teu07507 for turnbull@tux.org; Sun, 20 Apr 2003 21:55:40 -0400 Original-Received: from manatee.dms.auburn.edu (manatee.dms.auburn.edu [131.204.53.104]) by gwyn.tux.org (8.11.6p2/8.9.1) with ESMTP id h3L1teM07502; Sun, 20 Apr 2003 21:55:40 -0400 Original-Received: from eel.dms.auburn.edu (eel.dms.auburn.edu [131.204.53.108]) by manatee.dms.auburn.edu (8.12.9/8.12.9) with ESMTP id h3L1tZoc020170; Sun, 20 Apr 2003 20:55:35 -0500 (CDT) Original-Received: (from teirllm@localhost) by eel.dms.auburn.edu (8.11.6+Sun/8.11.6) id h3L1taS11309; Sun, 20 Apr 2003 20:55:36 -0500 (CDT) X-Authentication-Warning: eel.dms.auburn.edu: teirllm set sender to teirllm@dms.auburn.edu using -f Original-To: rms@gnu.org In-reply-to: (message from Richard Stallman on Sun, 20 Apr 2003 20:59:46 -0400) X-XEmacs-List: design Errors-To: xemacs-design-admin@xemacs.org X-BeenThere: xemacs-design@xemacs.org X-Mailman-Version: 2.0.13 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Discussion of design and features for XEmacs. List-Unsubscribe: , Xref: main.gmane.org gmane.emacs.xemacs.design:2082 gmane.emacs.devel:13309 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:13309 I am personally always weary of changing existing documented behavior. Sometimes it is necessary, but even then it is a necessary evil. There is, of course, the possibility of breaking existing code. We do not know "all existing code", so just grepping through stuff does not solve the problem. It also makes life hard on people trying to write packages that are portable between Emacs versions. My own suggestion would be to add a new optional argument, say delete-null-matches to split-string. The value could be "all", "none" or "edges" and maybe even "beginning" and "end" (but that would be a luxury). For Emacs a value of nil would be equivalent with "edges" (the current behavior), for XEmacs it would be equivalent with "none", XEmacs' current behavior. No existing Emacs or XEmacs code would get broken, and people worried about Emacs-XEmacs compatibility could always give an explicit non-nil value, which would be interpreted in exactly the same way by Emacs and XEmacs. Sincerely, Luc.