From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Mark H Weaver Newsgroups: gmane.lisp.guile.bugs Subject: bug#17296: Uh, wrong? Date: Mon, 22 Sep 2014 13:34:42 -0400 Message-ID: <8738bjk18t.fsf@yeeloong.lan> References: <878ur25thj.fsf@yeeloong.lan> <87wqcx99zk.fsf@fencepost.gnu.org> <87a99tv0wh.fsf@yeeloong.lan> <87bnu98ezt.fsf@fencepost.gnu.org> <87sinku3vj.fsf@yeeloong.lan> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1411407448 17962 80.91.229.3 (22 Sep 2014 17:37:28 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 22 Sep 2014 17:37:28 +0000 (UTC) Cc: 17296@debbugs.gnu.org To: David Kastrup Original-X-From: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Mon Sep 22 19:37:22 2014 Return-path: Envelope-to: guile-bugs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XW7Y8-0002J4-R6 for guile-bugs@m.gmane.org; Mon, 22 Sep 2014 19:37:20 +0200 Original-Received: from localhost ([::1]:47952 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XW7Y8-0004gh-BN for guile-bugs@m.gmane.org; Mon, 22 Sep 2014 13:37:20 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:44918) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XW7Y1-0004c8-33 for bug-guile@gnu.org; Mon, 22 Sep 2014 13:37:18 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XW7Xv-0000xh-Nr for bug-guile@gnu.org; Mon, 22 Sep 2014 13:37:13 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:57519) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XW7Xv-0000wd-K1 for bug-guile@gnu.org; Mon, 22 Sep 2014 13:37:07 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1XW7Xq-0006os-4n for bug-guile@gnu.org; Mon, 22 Sep 2014 13:37:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Mark H Weaver Original-Sender: "Debbugs-submit" Resent-CC: bug-guile@gnu.org Resent-Date: Mon, 22 Sep 2014 17:37:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 17296 X-GNU-PR-Package: guile X-GNU-PR-Keywords: patch Original-Received: via spool by 17296-submit@debbugs.gnu.org id=B17296.141140740226184 (code B ref 17296); Mon, 22 Sep 2014 17:37:02 +0000 Original-Received: (at 17296) by debbugs.gnu.org; 22 Sep 2014 17:36:42 +0000 Original-Received: from localhost ([127.0.0.1]:49083 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XW7XV-0006oF-3X for submit@debbugs.gnu.org; Mon, 22 Sep 2014 13:36:41 -0400 Original-Received: from world.peace.net ([96.39.62.75]:51038) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XW7XS-0006o7-6w for 17296@debbugs.gnu.org; Mon, 22 Sep 2014 13:36:39 -0400 Original-Received: from c-24-62-95-23.hsd1.ma.comcast.net ([24.62.95.23] helo=yeeloong.lan) by world.peace.net with esmtpsa (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.72) (envelope-from ) id 1XW7XL-0007tY-BU; Mon, 22 Sep 2014 13:36:31 -0400 In-Reply-To: <87sinku3vj.fsf@yeeloong.lan> (Mark H. Weaver's message of "Wed, 04 Jun 2014 10:49:04 -0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-guile@gnu.org List-Id: "Bug reports for GUILE, GNU's Ubiquitous Extension Language" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Original-Sender: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.bugs:7573 Archived-At: Mark H Weaver writes: > The fact that the SRFI-1 reference implementation of 'length+' is lax > very nearly swayed me over to your position, but there's a problem: > Guile's 'length+' has (always?) returned #f for dotted lists. It would > be dangerous to silently change the behavior of this case from one > non-error to another non-error. Programs could start silently > misbehaving without any clue that anything went wrong. BTW, I looked at the discussion archive for SRFI-1 looking for wisdom about whether we should eventually make 'length+' lax or not. I discovered that Olin Shivers (SRFI-1 author) was in favor of making essentially all SRFI-1 procedures tolerant of dotted lists, a position he expressed concisely as "everything is a list", since non-null non-pairs such as "foo", 2, and even? are naturally regarded as dotted lists of length 0. It turns out that he was overwhelming overruled on this. Some of the most respected people in the Scheme world agreed it was a bad idea, and in fact not a single other participant agreed with him. So he grudgingly changed the spec to reflect the consensus, but he left his reference implementation as he preferred. A good summary of the reasons against Olin's preference was given here: http://srfi.schemers.org/srfi-1/mail-archive/msg00052.html If you're curious, here's a threaded index of the entire discussion: http://srfi.schemers.org/srfi-1/mail-archive/threads.html Search for "Everything is a list" for Olin's position, and the threads following "Re: SRFI-1 round 3 discussion", where Olin tried to defend his position, then tried to sell a compromise, and finally gave in completely. Regards, Mark