From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: David Pirotte Newsgroups: gmane.lisp.guile.bugs Subject: bug#20093: master: setting merge-generics duplicate-binding-handler @ expand time raises an error Date: Sun, 3 Jul 2016 19:10:07 -0300 Message-ID: <20160703191007.0e4d2471@capac> References: <20150312001718.5d1ae438@capac> <87k2hfopyc.fsf@pobox.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; boundary="Sig_/yZ8lyTePZXyMf6bwj4DUFjk"; protocol="application/pgp-signature" X-Trace: ger.gmane.org 1467584104 5130 80.91.229.3 (3 Jul 2016 22:15:04 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 3 Jul 2016 22:15:04 +0000 (UTC) Cc: 20093@debbugs.gnu.org To: Andy Wingo Original-X-From: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Mon Jul 04 00:14:49 2016 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 1bJpf3-0004zb-JF for guile-bugs@m.gmane.org; Mon, 04 Jul 2016 00:14:45 +0200 Original-Received: from localhost ([::1]:44335 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bJpf2-0007xc-Ub for guile-bugs@m.gmane.org; Sun, 03 Jul 2016 18:14:44 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:36773) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bJpbY-0003We-9H for bug-guile@gnu.org; Sun, 03 Jul 2016 18:11:09 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bJpbS-0002mU-UK for bug-guile@gnu.org; Sun, 03 Jul 2016 18:11:07 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:52183) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bJpbS-0002mQ-Qr for bug-guile@gnu.org; Sun, 03 Jul 2016 18:11:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1bJpbS-0007jd-IB for bug-guile@gnu.org; Sun, 03 Jul 2016 18:11:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: David Pirotte Original-Sender: "Debbugs-submit" Resent-CC: bug-guile@gnu.org Resent-Date: Sun, 03 Jul 2016 22:11:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 20093 X-GNU-PR-Package: guile X-GNU-PR-Keywords: Original-Received: via spool by 20093-submit@debbugs.gnu.org id=B20093.146758382329686 (code B ref 20093); Sun, 03 Jul 2016 22:11:02 +0000 Original-Received: (at 20093) by debbugs.gnu.org; 3 Jul 2016 22:10:23 +0000 Original-Received: from localhost ([127.0.0.1]:36287 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bJpap-0007ik-3O for submit@debbugs.gnu.org; Sun, 03 Jul 2016 18:10:23 -0400 Original-Received: from maximusconfessor.all2all.org ([79.99.200.102]:50281) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bJpan-0007ic-FW for 20093@debbugs.gnu.org; Sun, 03 Jul 2016 18:10:22 -0400 Original-Received: from localhost (unknown [192.168.0.2]) by maximusconfessor.all2all.org (Postfix) with ESMTP id D684BA04C00F; Mon, 4 Jul 2016 00:10:19 +0200 (CEST) Original-Received: from maximusconfessor.all2all.org ([192.168.0.1]) by localhost (maximusconfessor.all2all.org [192.168.0.2]) (amavisd-new, port 10024) with ESMTP id BYhWcF2Xdvp7; Mon, 4 Jul 2016 00:10:14 +0200 (CEST) Original-Received: from capac (unknown [179.210.32.130]) by maximusconfessor.all2all.org (Postfix) with ESMTPSA id 13C47A04C10B; Mon, 4 Jul 2016 00:10:13 +0200 (CEST) In-Reply-To: <87k2hfopyc.fsf@pobox.com> X-Mailer: Claws Mail 3.13.2 (GTK+ 2.24.30; x86_64-pc-linux-gnu) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.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" Xref: news.gmane.org gmane.lisp.guile.bugs:8272 Archived-At: --Sig_/yZ8lyTePZXyMf6bwj4DUFjk Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Hello Andy, Further to the previous answer [of July the 2th 2016] > ... > But, you say, I only specified the duplicates handler after loading > goops! Well indeed, but if a module didn't specify #:duplicates, its > duplicates handling was implicitly dynamically scoped to whatever the > current default-duplicates-handlers were. That seems bogus to me: the > module declares its imports and exports and a lack of a declaration of > #:duplicates indicates that the module is implicitly specifying the > duplicate handlers that are described in the manual. I disagree with the way you [now' re-] interpret things: if a module has no #:duplicates declaration, it is implicitly specifying the duplicate handler= s=20 returned by (default-duplicate-binding-handler), _not_ the one from the manual. IMO, this was an API, and for me, a hard coded list instead of querying an = API does not offer any advantage, at the contrary, a step backward in 'power'. > In master I have changed the `default-duplicate-binding-handler' to > simply access the handlers for the current module, as that seems to be > the correct thing. Let me know how it goes! Closing as done but let's > follow up :) This breaks all my code, with no other option but maintaining my own boot-9 version: I really wish I can avoid that, could you reconsider? [no, = I don't want to have to use #:duplicates, since I _always_ [like always always alwa= ys] want my modules to grab my global setting and default]. As you understood by now, I need 2 things wrt duplicate handlers: 1. I must be able to patch guild, so it ,use (oop goops) and set these before I compile my modules [with or without --no-auto-compile does not matter]. All my scripts do so as well of course [1] #!/bin/sh # -*- scheme -*- exec ${GUILE:-/opt2/bin/guile} --no-auto-compile -e '(@@ (guild) main)' -= s "$0" "$@" !# (eval-when (expand load eval) (use-modules (oop goops)) (default-duplicate-binding-handler '(merge-generics replace warn-override-core warn last))) ... This does not work anymore, I hope it can be fixed 2. obviously, the above only make sense if modules grab (default-duplicate-binding-handler) when no #:duplicates declaration I can maintain my own boot-9 but wish to avoid this solution. Cheers, David [1] http://git.savannah.gnu.org/cgit/grip.git/tree/grip/clutter/examples/bo= uncer.in --Sig_/yZ8lyTePZXyMf6bwj4DUFjk Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBCAAGBQJXeY0/AAoJEPN0/ZOjBXrXTHgIAMOC5y4OVfc+t4zqTA8STzNn C6ZZvM02RV6JfILmtbvhmAD1pIZwu89Pn9l5SdnsDsDolLAUJ+aFa1In0MXS+AdC zE+C18bCVXVd/IZKb5D/2oViDbvBcd/UMERl+KgQX/96NORZpocqAg5hvqi8eOb2 H9AvBBA0jcYT9t2Zn6WMHzi9n4ArKfLV2zUa0x4aILYjB3KEJyfzY9QVhxspdDdx o/rkJbxcdmLfw1O6/0AHVAHwfGOC/SFb1mGM10JMnqknUfgiOgJoXk4s0tJwWlsZ G/hpph0xqjXdHWa41pMOT+Uq+yH9Q3WIpwQBK0uKzpms/JUwMpSFGHYVBpWQioQ= =jzI3 -----END PGP SIGNATURE----- --Sig_/yZ8lyTePZXyMf6bwj4DUFjk--