X-Loop: help-debbugs@HIDDEN Subject: bug#48318: (ice-9 match) does not allow distinguishing between () and #nil Resent-From: Maxime Devos <maximedevos@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-guile@HIDDEN Resent-Date: Sun, 09 May 2021 16:44:02 +0000 Resent-Message-ID: <handler.48318.B.16205785835561 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: report 48318 X-GNU-PR-Package: guile X-GNU-PR-Keywords: To: 48318 <at> debbugs.gnu.org X-Debbugs-Original-To: bug-guile@HIDDEN Received: via spool by submit <at> debbugs.gnu.org id=B.16205785835561 (code B ref -1); Sun, 09 May 2021 16:44:02 +0000 Received: (at submit) by debbugs.gnu.org; 9 May 2021 16:43:03 +0000 Received: from localhost ([127.0.0.1]:56202 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1lfmWF-0001Rd-Eg for submit <at> debbugs.gnu.org; Sun, 09 May 2021 12:43:03 -0400 Received: from lists.gnu.org ([209.51.188.17]:46270) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <maximedevos@HIDDEN>) id 1lfmWD-0001RD-U7 for submit <at> debbugs.gnu.org; Sun, 09 May 2021 12:43:02 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:57154) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <maximedevos@HIDDEN>) id 1lfmWD-0008Gz-EU for bug-guile@HIDDEN; Sun, 09 May 2021 12:43:01 -0400 Received: from baptiste.telenet-ops.be ([2a02:1800:120:4::f00:13]:57922) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <maximedevos@HIDDEN>) id 1lfmW7-0008Pt-J7 for bug-guile@HIDDEN; Sun, 09 May 2021 12:43:01 -0400 Received: from butterfly.local ([213.251.116.230]) by baptiste.telenet-ops.be with bizsmtp id 2giq2500C4yL7Jl01girJw; Sun, 09 May 2021 18:42:51 +0200 Message-ID: <4c8839f49a6c7317324d5360d74594c181b0588b.camel@HIDDEN> From: Maxime Devos <maximedevos@HIDDEN> Date: Sun, 09 May 2021 18:42:40 +0200 Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="=-W7rR4/1OKaSnlkD/yGzq" User-Agent: Evolution 3.34.2 MIME-Version: 1.0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telenet.be; s=r21; t=1620578571; bh=7wkOmWiEKsCwhuuaqm/p8KeOavnK7CDbREpqWJa2+Fg=; h=Subject:From:To:Date; b=aKnPqmtsi6b3142x8U/0faw2a7DVnuutM9wYiE/QrD/guKP4/6PV1WjqoSXBYaqkX ExusR48lTJGFJ+9k8V40/hLXHgJ4WwTELagAEMDXlokgWBYoB6KWGdtCL4Ju3hLp8Z Phnq2nsGPfmcV2B3JRknVQJN6ZuV5CLJjLSqEsPmma9S6DB5nGrjAHhwIFWpNen8bk vbPk5HZ7zCubIMcjM4wgWKhSe95xj7K6S8ihvAoa3YKDGkVaBLCt4yhsHI2AGbO7gA 3fJFPTM8zc3N0K7gudHUIbjiBceH0GWL/Unuvsq5JnR2J4QWL6NcYuSKpM9sGQZSAm AnRcwqj9kh6Jw== Received-SPF: pass client-ip=2a02:1800:120:4::f00:13; envelope-from=maximedevos@HIDDEN; helo=baptiste.telenet-ops.be X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -0.5 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -2.3 (--) --=-W7rR4/1OKaSnlkD/yGzq Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi guilers, I've found the following surprising behaviour: (use-modules (ice-9 match)) (match (identity #nil) (() 'scheme-eol) (#nil 'elisp-eol)) --> scheme-eol, expected elisp-eol (match '() (#nil 'elisp-eol) (() 'elisp-eol)) --> elisp-eol, expected scheme-eol Treating () and #nil as equivalent makes sense, but should be documented. My suspicion, currently untested: the following code in ice-9/match.upstream.scm ... (define-syntax match-two (syntax-rules (_ ___ ..1 *** quote quasiquote ? $ =3D and or not set! get= !) ((match-two v () g+s (sk ...) fk i) (if (null? v) (sk ... i) fk)) [..] should be: (define-syntax match-two (syntax-rules (_ ___ ..1 *** quote quasiquote ? $ =3D and or not set! get= !) ((match-two v () g+s (sk ...) fk i) (if (eq? v '()) (sk ... i) fk)) ((match-two v #nil g+s (sk ...) fk i) (if (eq? v #nil) (sk ... i) fk)) [...] And the following might need similar adjustment: ((match-two v (p) g+s sk fk i) (if (and (pair? v) (null? (cdr v))) (let ((w (car v))) (match-one w p ((car v) (set-car! v)) sk fk i)) fk)) Greetings, Maxime. --=-W7rR4/1OKaSnlkD/yGzq Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYJgRABccbWF4aW1lZGV2 b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7sMsAP46Jl7Xfo8PL/lkADk9yc7MvtVr whcPMIpVkvgLIauCKQEA113noQSu2c4N38v3QjG3BmN8+KX1qsAZwBEpOyyN2gE= =8eS9 -----END PGP SIGNATURE----- --=-W7rR4/1OKaSnlkD/yGzq--
Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) Content-Type: text/plain; charset=utf-8 X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: Maxime Devos <maximedevos@HIDDEN> Subject: bug#48318: Acknowledgement ((ice-9 match) does not allow distinguishing between () and #nil) Message-ID: <handler.48318.B.16205785835561.ack <at> debbugs.gnu.org> References: <4c8839f49a6c7317324d5360d74594c181b0588b.camel@HIDDEN> X-Gnu-PR-Message: ack 48318 X-Gnu-PR-Package: guile Reply-To: 48318 <at> debbugs.gnu.org Date: Sun, 09 May 2021 16:44:02 +0000 Thank you for filing a new bug report with debbugs.gnu.org. This is an automatically generated reply to let you know your message has been received. Your message is being forwarded to the package maintainers and other interested parties for their attention; they will reply in due course. Your message has been sent to the package maintainer(s): bug-guile@HIDDEN If you wish to submit further information on this problem, please send it to 48318 <at> debbugs.gnu.org. Please do not send mail to help-debbugs@HIDDEN unless you wish to report a problem with the Bug-tracking system. --=20 48318: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D48318 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.